From 87e88fdefa771069131a7af11329c1e8af2f66aa Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Sun, 21 Apr 2024 14:43:27 -0600 Subject: [PATCH 01/16] initial db_util file --- utils/db_util.py | 67 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 utils/db_util.py diff --git a/utils/db_util.py b/utils/db_util.py new file mode 100644 index 00000000..75edb2bd --- /dev/null +++ b/utils/db_util.py @@ -0,0 +1,67 @@ +class PostgreSQLDatabase: + def __init__(self, username, password, host, port, database_name): + self.username = username + self.password = password + self.host = host + self.port = port + self.database_name = database_name + + def connect(self): + try: + self.conn = psycopg2.connect( + host=self.host, + port=self.port, + user=self.username, + password=self.password, + dbname=self.database_name + ) + except psycopg2.OperationalError as e: + print(f"Connection failed: {e}") + finally: + if self.conn is not None: + self.conn.close() + self.conn = None + + def cursor(self): + try: + self.cursor = self.conn.cursor() + except psycopg2.OperationalError as e: + print(f"Cursor creation failed: {e}") + finally: + if self.cursor is not None: + self.cursor.close() + self.cursor = None + self.connect() + + def create_table(self, table_name, columns): + try: + if self.conn is not None and self.cursor is not None: + query = f"CREATE TABLE IF NOT EXISTS {table_name} ({', '.join([f'{column} VARCHAR(255)' for column +in columns])})" + self.cursor.execute(query) + self.conn.commit() + except psycopg2.OperationalError as e: + print(f"Table creation failed: {e}") + finally: + if self.cursor is not None: + self.cursor.close() + + def insert_data(self, table_name, columns, values): + try: + if self.conn is not None and self.cursor is not None: + query = f"INSERT INTO {table_name} ({', '.join(columns)}) VALUES ({', '.join(['%s'] * +len(values))})" + self.cursor.execute(query, tuple(values)) + self.conn.commit() + except psycopg2.OperationalError as e: + print(f"Insertion failed: {e}") + finally: + if self.cursor is not None: + self.cursor.close() + +# Example usage +if __name__ == '__main__': + database = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'sigmanaut-mining') + database.connect() + database.cursor() + database.insert_data('your_table_name', ['column1', 'column2'], ('value1', 'value2')) From dc942be1e46727340ba13623593b909a3842e390 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Wed, 24 Apr 2024 22:06:24 -0600 Subject: [PATCH 02/16] block and stat tables ready to be live, block table is able to check for higher confirmation or new hashes and updates table as needed --- utils/api_2_db.py | 160 ++++++++++++++++++++++++++++++++++++++++++++++ utils/db_util.py | 158 +++++++++++++++++++++++++++++++++++---------- 2 files changed, 283 insertions(+), 35 deletions(-) create mode 100644 utils/api_2_db.py diff --git a/utils/api_2_db.py b/utils/api_2_db.py new file mode 100644 index 00000000..fef91201 --- /dev/null +++ b/utils/api_2_db.py @@ -0,0 +1,160 @@ +import requests +from hydra import compose, initialize +from omegaconf import DictConfig, OmegaConf +from pandas import DataFrame, concat, to_datetime +from pycoingecko import CoinGeckoAPI +from datetime import datetime +from hydra.core.global_hydra import GlobalHydra +import pytz + +from utils.db_util import PostgreSQLDatabase + +def format_datetime(time_str): + # List of possible datetime formats to try + formats = [ + "%Y-%m-%dT%H:%M:%S.%fZ", # datetime with microseconds and 'Z' timezone + "%Y-%m-%dT%H:%M:%S", # datetime without microseconds or timezone + "%Y-%m-%dT%H:%M:%S%z", # datetime with timezone offset + "%Y-%m-%dT%H:%M:%SZ" # datetime with 'Z' but without microseconds + ] + + # Attempt to parse the datetime string with each format + for fmt in formats: + try: + dt = datetime.strptime(time_str, fmt) + return dt.strftime("%Y-%m-%d %H:%M:%S") # Converts to your desired format + except ValueError: + continue # Try the next format if the current one fails + + # If no format matches, raise an exception + raise ValueError(f"Time data '{time_str}' does not match any expected format") + +class PriceReader: + def __init__(self): + self.cg = CoinGeckoAPI() + + def get(self, debug=False): + # Fetch current price of Bitcoin (BTC) and Ergo (ERG) in USD + if debug: + return 10, 10 + else: + prices = self.cg.get_price(ids=['bitcoin', 'ergo'], vs_currencies='usd') + btc_price = prices['bitcoin']['usd'] + erg_price = prices['ergo']['usd'] + return btc_price, erg_price + +class DataSyncer: + def __init__(self, config_path: str): + self.block_reward = 27 #need to calc this from emissions.csv + self.config_path = config_path + self.price_reader = PriceReader() + try: + initialize(config_path, self.config_path, version_base=None) + except ValueError: + GlobalHydra.instance().clear() + initialize(config_path, self.config_path, version_base=None) + cfg = compose(config_name='conf') + + self.api = cfg.default_values.url + self.token_id = cfg.user_defined.token_id + self.token_ls = cfg.default_values.token_ls + self.base_api = cfg.default_values.base_api + self.stats_headers = cfg.default_values.stats_cols + self.block_headers = cfg.default_values.block_cols + self.miner_sample_df = DataFrame(columns=['created']) + self.btc_price, self.erg_price = self.price_reader.get(debug) + self.data = {'poolEffort': 0} + + self.db = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db') + self.db.connect() + self.db.get_cursor() + + def get_api_data(self, api_url): + try: + # Send a GET request to the API + response = requests.get(api_url) + + # Check if the request was successful (status code 200) + if response.status_code == 200: + # Parse the response as JSON (assuming the API returns JSON data) + data = response.json() + return data + else: + print(f"Failed to retrieve data: Status code {response.status_code}") + return None + + except requests.exceptions.RequestException as e: + # Handle any exceptions that occur during the request + print(f"An error occurred: {e}") + return None + + def __create_table_(self, table + self.db.create_table('stats', self.stats_headers) + self.db.create_table('block', self.block_headers) + return + + def update_pool_stats(self, timenow): + ''' + The purpose of this method is to grab all the relevant stats of the pool and network + ''' + stats = self.get_api_data(self.base_api)['pool'] + last_block_found = stats['lastPoolBlockTime'] + format_string = '%Y-%m-%dT%H:%M:%S.%fZ' + date_time_obj = datetime.strptime(last_block_found, format_string) + last_block_found = date_time_obj.strftime('%A, %B %d, %Y at %I:%M:%S %p') + + self.data = {'fee': stats['poolFeePercent'], + 'paid': stats['totalPaid'], + 'blocks': stats['totalBlocks'], + 'last_block_found': last_block_found} + + payment_data = stats['paymentProcessing'] # dict + pool_stats = stats['poolStats'] # dict + net_stats = stats['networkStats'] # dict + + for key in payment_data.keys(): + self.data[key] = payment_data[key] + + for key in pool_stats.keys(): + self.data[key] = pool_stats[key] + + for key in net_stats.keys(): + self.data[key] = net_stats[key] + + self.data['poolHashrate'] = round(self.data['poolHashrate'] / 1e9, 2) # GigaHash/Second + self.data['networkHashrate'] = self.data['networkHashrate'] / 1e12 # Terra Hash/Second + self.data['networkDifficulty'] = self.data['networkDifficulty'] / 1e15 # Peta + self.data['insert_time_stamp'] = timenow + + self.db.insert_data('stats', self.data) + + def update_block_data(self, timenow): + ''' + The purpose of this method is to grab the latest blocks. + + Currently we search through the last ten blocks in general + + Will need to add Rolling Effort in the df in the page itself vs db + ''' + url = '{}/{}'.format(reader.base_api, 'blocks?pageSize=10') + block_data = reader.get_api_data(url) + for data in block_data: + data['rolling_effort'] = data['effort'].expanding().mean() + data['time_found'] = format_datetime(data.pop('created')) + data['confirmationProgress'] = data['confirmationProgress'] * 100 + data['networkDifficulty'] = round(data['networkDifficulty'], 2) + data['effort'] = round(data['effort'], 2) + data['reward'] = round(data['reward'], 2) + data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:]) + self.db.update_or_insert('block', data) + + + + + + + + + + + diff --git a/utils/db_util.py b/utils/db_util.py index 75edb2bd..f9eaa702 100644 --- a/utils/db_util.py +++ b/utils/db_util.py @@ -1,3 +1,6 @@ +import psycopg2 +import pandas as pd + class PostgreSQLDatabase: def __init__(self, username, password, host, port, database_name): self.username = username @@ -5,6 +8,7 @@ def __init__(self, username, password, host, port, database_name): self.host = host self.port = port self.database_name = database_name + self.conn = None def connect(self): try: @@ -17,47 +21,131 @@ def connect(self): ) except psycopg2.OperationalError as e: print(f"Connection failed: {e}") - finally: - if self.conn is not None: - self.conn.close() - self.conn = None + self.conn = None - def cursor(self): - try: - self.cursor = self.conn.cursor() - except psycopg2.OperationalError as e: - print(f"Cursor creation failed: {e}") - finally: - if self.cursor is not None: - self.cursor.close() - self.cursor = None - self.connect() + def get_cursor(self): + if self.conn is not None: + try: + return self.conn.cursor() + except psycopg2.OperationalError as e: + print(f"Cursor creation failed: {e}") + return None + return None def create_table(self, table_name, columns): - try: - if self.conn is not None and self.cursor is not None: - query = f"CREATE TABLE IF NOT EXISTS {table_name} ({', '.join([f'{column} VARCHAR(255)' for column -in columns])})" - self.cursor.execute(query) + cursor = self.get_cursor() + if cursor: + try: + query = f"CREATE TABLE IF NOT EXISTS {table_name} ({', '.join(columns)})" + cursor.execute(query) self.conn.commit() - except psycopg2.OperationalError as e: - print(f"Table creation failed: {e}") - finally: - if self.cursor is not None: - self.cursor.close() + except psycopg2.OperationalError as e: + print(f"Table creation failed: {e}") + finally: + cursor.close() - def insert_data(self, table_name, columns, values): - try: - if self.conn is not None and self.cursor is not None: - query = f"INSERT INTO {table_name} ({', '.join(columns)}) VALUES ({', '.join(['%s'] * -len(values))})" - self.cursor.execute(query, tuple(values)) + def delete_table(self, table_name): + cursor = self.get_cursor() + if cursor: + try: + query = f"DROP TABLE IF EXISTS {table_name}" + cursor.execute(query) self.conn.commit() - except psycopg2.OperationalError as e: - print(f"Insertion failed: {e}") - finally: - if self.cursor is not None: - self.cursor.close() + print(f"Table {table_name} deleted successfully.") + except psycopg2.OperationalError as e: + print(f"Table deletion failed: {e}") + finally: + cursor.close() + + + def insert_data(self, table_name, data): + cursor = self.get_cursor() + if cursor: + try: + columns = list(data.keys()) + values = list(data.values()) + placeholders = ', '.join(['%s'] * len(values)) # Create placeholders for parameterized query + query = f"INSERT INTO {table_name} ({', '.join(columns)}) VALUES ({placeholders})" + cursor.execute(query, values) + self.conn.commit() + except psycopg2.OperationalError as e: + print(f"Insertion failed: {e}") + + except Exception as e: + print(e) + finally: + cursor.close() + + def update_or_insert(self, table_name, data): + """ + Updates or inserts data based on hash and confirmation progress. + Assumes data is a dictionary containing all necessary columns including hash and confirmationProgress. + + :param table_name: Name of the table to update or insert into. + :param data: Data dictionary where keys are column names and values are data values. + """ + hash = data['hash'] + new_confirmation = data['confirmationProgress'] + cursor = self.get_cursor() + if cursor: + try: + # First, try to fetch the existing row with the same hash. + cursor.execute("SELECT * FROM {} WHERE hash = %s".format(table_name), (hash,)) + existing_row = cursor.fetchone() + + if existing_row: + existing_confirmation = existing_row[4] # Assuming confirmationProgress is the 5th column in the table + if new_confirmation > existing_confirmation: + # If new confirmation is greater, update the row. + columns = ', '.join([f"{key} = %s" for key in data.keys()]) + values = list(data.values()) + cursor.execute(f"UPDATE {table_name} SET {columns} WHERE hash = %s", values + [hash]) + else: + # If no existing row, insert new. + columns = ', '.join(data.keys()) + placeholders = ', '.join(['%s'] * len(data)) + cursor.execute(f"INSERT INTO {table_name} ({columns}) VALUES ({placeholders})", list(data.values())) + + self.conn.commit() + except psycopg2.OperationalError as e: + print(f"Database operation failed: {e}") + finally: + cursor.close() + + + + def fetch_data(self, table_name, columns='*', where=None): + """ + Fetches data from the specified table. + + :param table_name: Name of the table to fetch data from. + :param columns: Columns to fetch, defaults to '*'. + :param where: Optional WHERE clause to filter results. + :return: A list of tuples containing the data fetched, or an empty list if no data. + """ + cursor = self.get_cursor() + if cursor: + try: + query = f"SELECT {', '.join(columns) if isinstance(columns, list) else columns} FROM {table_name}" + if where: + query += f" WHERE {where}" + # + # return cursor.fetchall() # Fetch all rows of a query result + # try: + return pd.read_sql_query(query, self.conn) + # except Exception: + # cursor.execute(query) + # return cursor.fetchall() + except psycopg2.OperationalError as e: + print(f"Data fetch failed: {e}") + finally: + cursor.close() + return pd.DataFrame() + + + def close(self): + if self.conn: + self.conn.close() # Example usage if __name__ == '__main__': From b51d170cb96c38c201050f99034cede3b79cc4e8 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Sat, 27 Apr 2024 22:27:34 -0600 Subject: [PATCH 03/16] finalizing db tables, next integration with layouts --- conf/conf.yaml | 53 + prototype.ipynb | 7872 ++++++++++++++++++++++++++++++++++++++++--- utils/api_2_db.py | 99 +- utils/api_reader.py | 19 +- utils/db_util.py | 10 +- 5 files changed, 7503 insertions(+), 550 deletions(-) diff --git a/conf/conf.yaml b/conf/conf.yaml index c8513adf..4c866353 100644 --- a/conf/conf.yaml +++ b/conf/conf.yaml @@ -8,3 +8,56 @@ default_values: url: 'https://api.ergo.aap.cornell.edu/api/v1/boxes/unspent/byAddress/' token_ls: 'https://api.ergo.aap.cornell.edu/api/v1/tokens' base_api: 'http://15.204.211.130:4000/api/pools/ErgoSigmanauts' + stats_cols: [ + 'fee NUMERIC', # Numeric type for precision + 'paid NUMERIC', # Numeric type for decimal values + 'blocks INTEGER', # Integer value for block counts + 'last_block_found TIMESTAMP', # Timestamp for dates, assuming proper conversion before storage + 'enabled BOOLEAN', # Boolean type for true/false + 'minimumPayment NUMERIC', # Numeric type for precision of payments + 'payoutScheme VARCHAR(255)', # String type for defined payout schemes + 'connectedMiners INTEGER', # Integer for counting connected miners + 'poolHashrate NUMERIC', # Numeric type for decimal values + 'sharesPerSecond NUMERIC', # Numeric type for decimal values + 'networkType VARCHAR(50)', # String type for network types + 'networkHashrate NUMERIC', # Numeric type for hash rates + 'networkDifficulty NUMERIC', # Numeric type for network difficulty + 'lastNetworkBlockTime TIMESTAMP', # Timestamp for block times + 'blockHeight INTEGER', # Integer for block height values + 'connectedPeers INTEGER', # Integer for counting connected peers + 'rewardType VARCHAR(50)', # String type for reward types + 'poolEffort NUMERIC', # Numeric type for pool effort + 'poolTTF NUMERIC', # Numeric type for pool time to find + 'db_timestamp TIMESTAMP'] # Timestamp for the exact time data was recorded + + block_cols: ['poolId VARCHAR(255)', + 'blockHeight INTEGER', + 'networkDifficulty NUMERIC', + 'status VARCHAR(255)', + 'confirmationProgress INTEGER', + 'effort NUMERIC', + 'transactionConfirmationData VARCHAR(255)', + 'reward NUMERIC', + 'infoLink VARCHAR(255)', + 'hash VARCHAR(255)', + 'miner VARCHAR(255)', + 'source VARCHAR(255)', + 'created VARCHAR(255)'] + + payment_headers: ['pendingShares NUMERIC', + 'pendingBalance NUMERIC', + 'totalPaid NUMERIC', + 'todayPaid NUMERIC', + 'Schema VARCHAR(50)', + 'Price NUMERIC', + 'lastPayment VARCHAR(50)', + 'lastPaymentLink TEXT', + 'created_at TIMESTAMP', + 'miner VARCHAR(100)'] + + live_worker_headers: ['worker VARCHAR(50)', 'hashrate NUMERIC', 'shares_per_second NUMERIC', + 'created TIMESTAMP', 'miner VARCHAR(100)', 'effort NUMERIC', + 'ttf NUMERIC', 'last_block_found VARCHAR(100)'] + + performance_headers: ['worker VARCHAR(50)', 'hashrate NUMERIC', 'shares_per_second NUMERIC', + 'created TIMESTAMP', 'miner VARCHAR(60)'] diff --git a/prototype.ipynb b/prototype.ipynb index 190d7dd7..bbffeb6e 100644 --- a/prototype.ipynb +++ b/prototype.ipynb @@ -3,739 +3,7557 @@ { "cell_type": "code", "execution_count": 1, - "id": "9e4f1413-71a8-4b4c-8ca7-ed6d5cd46f9e", - "metadata": { - "editable": true, - "slideshow": { - "slide_type": "" - }, - "tags": [] - }, + "id": "2f7ecc38-5e44-4bf6-b0f2-7bc3447737c2", + "metadata": {}, "outputs": [], "source": [ - "from utils.api_reader import SigmaWalletReader" + "from utils.db_util import PostgreSQLDatabase\n", + "from utils.api_reader import SigmaWalletReader\n", + "from datetime import datetime\n", + "import pandas as pd" ] }, { "cell_type": "code", "execution_count": 2, - "id": "df7966d0-470e-40e6-9a89-a04f48d4233a", - "metadata": { - "editable": true, - "slideshow": { - "slide_type": "" - }, - "tags": [] - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Requirement already satisfied: numpy in /home/whaleshark/miniconda3/lib/python3.12/site-packages (1.26.4)\n" - ] - } - ], - "source": [ - "!pip install numpy" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "9d97979d-020a-43d9-9f40-46114d65ceba", + "id": "d23a8542-7c68-42bb-a573-9fe902b78038", "metadata": {}, "outputs": [], "source": [ - "reader = SigmaWalletReader(config_path=\"../conf\")" + "def format_datetime(time_str):\n", + " # List of possible datetime formats to try\n", + " formats = [\n", + " \"%Y-%m-%dT%H:%M:%S.%fZ\", # datetime with microseconds and 'Z' timezone\n", + " \"%Y-%m-%dT%H:%M:%S\", # datetime without microseconds or timezone\n", + " \"%Y-%m-%dT%H:%M:%S%z\", # datetime with timezone offset\n", + " \"%Y-%m-%dT%H:%M:%SZ\" # datetime with 'Z' but without microseconds\n", + " ]\n", + " \n", + " # Attempt to parse the datetime string with each format\n", + " for fmt in formats:\n", + " try:\n", + " dt = datetime.strptime(time_str, fmt)\n", + " return dt.strftime(\"%Y-%m-%d %H:%M:%S\") # Converts to your desired format\n", + " except ValueError:\n", + " continue # Try the next format if the current one fails\n", + " \n", + " # If no format matches, raise an exception\n", + " raise ValueError(f\"Time data '{time_str}' does not match any expected format\")" ] }, { "cell_type": "code", - "execution_count": null, - "id": "29e42d9b-3327-46e2-b91e-7d10043950f6", + "execution_count": 3, + "id": "84c34201-a0a7-48cc-9c27-3c3382ae5d1e", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "import numpy" + "database = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db')\n", + "database.connect()\n", + "database.get_cursor()" ] }, { "cell_type": "code", - "execution_count": null, - "id": "d86ed853-985b-40fc-8c89-1e2ea1f37ccd", + "execution_count": 4, + "id": "50b6c812-177b-469c-a4ec-fa75a165c5d2", "metadata": {}, "outputs": [], "source": [ - "data = reader.get_api_data('http://15.204.211.130:4000/api/pools/ErgoSigmanauts/miners/')\n", - "data" + "reader = SigmaWalletReader(config_path=\"../conf\")\n", + "reader.update_data()" ] }, { "cell_type": "code", - "execution_count": null, - "id": "372d7b7b-7723-4f53-9b66-1ad0848b4d1d", + "execution_count": 5, + "id": "18178c1c-da24-40d0-8cd1-4242cec9f48b", "metadata": {}, "outputs": [], "source": [ - "miner_ls = []\n", - "for sample in data:\n", - " miner_ls.append(sample['miner'])\n", - "\n", + "url = '{}/{}'.format(reader.base_api, 'blocks?pageSize=5000')\n", + "block_data = reader.get_api_data(url)\n", + "block_df = pd.DataFrame(block_data)\n", + "# block_df['rolling_effort'] =block_df['effort'].expanding().mean()\n", + "block_df = block_df.rename(columns={'created': 'time_found'})\n", + "block_df['time_found'] = [format_datetime(data) for data in block_df.time_found]\n", + "data = reader.data\n", "\n", - "miner_ls" + "# block_df = block_df.rename(columns={'Time Found': 'Time_Found', 'Rolling Effort' : 'Rolling_Effort',\n", + " # 'Confirmation [%]': 'Confirmation', 'reward [erg]': 'reward_erg', 'effort [%]': 'effort_percentage'})" ] }, { "cell_type": "code", - "execution_count": null, - "id": "3b4859c6-b30f-428c-b51a-fb99afdbbf26", + "execution_count": 6, + "id": "787e29f9-55ba-4c40-b839-b235bf91b5e3", "metadata": {}, - "outputs": [], - "source": [ - "miners = {}\n", - "for sample in data:\n", - " miners[sample['miner']] = 0\n", - "for key in miners.keys():\n", - " url = '{}/{}'.format('http://15.204.211.130:4000/api/pools/ErgoSigmanauts/miners', key)\n", - " sample = reader.get_api_data(url)\n", - " miners[key] = sample['pendingShares']\n", - "miners" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "4ddb876b-3406-43e6-bc1c-8de577282b07", - "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'poolId': 'ErgoSigmanauts',\n", + " 'blockHeight': 1252559,\n", + " 'networkDifficulty': 422881.6589500178,\n", + " 'status': 'pending',\n", + " 'confirmationProgress': 0.4722222222222222,\n", + " 'effort': 0.017699607118926087,\n", + " 'transactionConfirmationData': '56dcc160776a8a71',\n", + " 'reward': 27.0221,\n", + " 'infoLink': 'https://explorer.ergoplatform.com/en/blocks/f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4a7a4ce7fecc67517ea',\n", + " 'hash': 'f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4a7a4ce7fecc67517ea',\n", + " 'miner': '9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL8ygPH',\n", + " 'source': 'ErgoSigmanauts',\n", + " 'created': '2024-04-28T03:06:52.686688Z'}" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Total of all values\n", - "total = sum(miners.values())\n", - "\n", - "# Assume a reward variable, say 10000 for this example\n", - "reward = 30\n", - "\n", - "# Calculate the percentage for each key based on its value and then determine the reward based on this percentage\n", - "rewards = {key: (value / total) * reward for key, value in miners.items()}\n", - "\n", - "rewards" + "block_data[0]" ] }, { "cell_type": "code", - "execution_count": null, - "id": "81777f3c-f7e5-4b00-a4da-188afd812e8d", + "execution_count": 7, + "id": "655255eb-a4ba-48ab-a137-1f70dc83b8e3", "metadata": {}, - "outputs": [], - "source": [ - "import pandas as pd\n", - "rewards_df = pd.DataFrame(list(rewards.items()), columns=['miner', 'reward'])\n", - "rewards_df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "948b1fe5-cce7-4184-94f8-f695cbab4ea0", - "metadata": { - "scrolled": true - }, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolIdblockHeightnetworkDifficultystatusconfirmationProgressefforttransactionConfirmationDatarewardinfoLinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.658950pending0.4722220.01770056dcc160776a8a7127.0221https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...ErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.658950pending0.5555561.85688250230ed620a8fa0b27.0000https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.285885confirmed1.0000000.11252550a300044822864227.0010https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.443497confirmed1.0000000.244779502468dac362205227.0182https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.443497confirmed1.0000001.03993150d8fd9c81187de227.0088https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...ErgoSigmanauts2024-04-27 04:31:16
\n", + "
" + ], + "text/plain": [ + " poolId blockHeight networkDifficulty status \\\n", + "0 ErgoSigmanauts 1252559 422881.658950 pending \n", + "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "\n", + " confirmationProgress effort transactionConfirmationData reward \\\n", + "0 0.472222 0.017700 56dcc160776a8a71 27.0221 \n", + "1 0.555556 1.856882 50230ed620a8fa0b 27.0000 \n", + "2 1.000000 0.112525 50a3000448228642 27.0010 \n", + "3 1.000000 0.244779 502468dac3622052 27.0182 \n", + "4 1.000000 1.039931 50d8fd9c81187de2 27.0088 \n", + "\n", + " infoLink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "2 https://explorer.ergoplatform.com/en/blocks/58... \n", + "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "\n", + " hash \\\n", + "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "\n", + " miner source \\\n", + "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "\n", + " time_found \n", + "0 2024-04-28 03:06:52 \n", + "1 2024-04-28 02:55:03 \n", + "2 2024-04-27 07:59:45 \n", + "3 2024-04-27 06:54:45 \n", + "4 2024-04-27 04:31:16 " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "url = 'http://15.204.211.130:4000/api/pools/ErgoSigmanauts/miners/9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'\n", - "data = reader.get_api_data(url)\n", - "samples = data['performanceSamples']\n", - "samples" + "block_df.head()" ] }, { "cell_type": "code", - "execution_count": null, - "id": "789f6800-f713-4c1a-ad75-add4bab19249", + "execution_count": 8, + "id": "ed86fefd-3c5b-46d4-83c4-cd0f5ef80a48", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['poolId', 'blockHeight', 'networkDifficulty', 'status',\n", + " 'confirmationProgress', 'effort', 'transactionConfirmationData',\n", + " 'reward', 'infoLink', 'hash', 'miner', 'source', 'time_found'],\n", + " dtype='object')" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "df = reader.get_miner_samples(wallet='9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk')" + "block_df.columns" ] }, { "cell_type": "code", - "execution_count": null, - "id": "00445d3a-4718-47e0-8eda-26b9fd3ed2be", + "execution_count": 9, + "id": "448fe191-98eb-4b12-afe3-5085d9a33111", "metadata": {}, "outputs": [], "source": [ - "df.empty" + "block_cols = ['poolId VARCHAR(255)',\n", + " 'blockHeight INTEGER',\n", + " 'networkDifficulty NUMERIC',\n", + " 'status VARCHAR(255)',\n", + " 'confirmationProgress NUMERIC',\n", + " 'effort NUMERIC',\n", + " 'transactionConfirmationData VARCHAR(255)',\n", + " 'reward NUMERIC', \n", + " 'infoLink VARCHAR(255)',\n", + " 'hash VARCHAR(255)', \n", + " 'miner VARCHAR(255)',\n", + " 'source VARCHAR(255)',\n", + " 'time_found TIMESTAMP',]" ] }, { "cell_type": "code", - "execution_count": null, - "id": "78c58501-c375-412c-a9b7-562b77faa88d", + "execution_count": 10, + "id": "966694da-50b5-4532-8200-84740a5ac648", "metadata": {}, "outputs": [], "source": [ - "d = {'a': [1], \n", - " 'b': [2]}\n", - "pd.DataFrame.from_dict(d)" + "data_cols = [\n", + " 'fee NUMERIC', # Numeric type for precision\n", + " 'paid NUMERIC', # Numeric type for decimal values\n", + " 'blocks INTEGER', # Integer value for block counts\n", + " 'last_block_found TIMESTAMP', # Timestamp for dates, assuming proper conversion before storage\n", + " 'enabled BOOLEAN', # Boolean type for true/false\n", + " 'minimumPayment NUMERIC', # Numeric type for precision of payments\n", + " 'payoutScheme VARCHAR(255)', # String type for defined payout schemes\n", + " 'connectedMiners INTEGER', # Integer for counting connected miners\n", + " 'poolHashrate NUMERIC', # Numeric type for decimal values\n", + " 'sharesPerSecond NUMERIC', # Numeric type for decimal values\n", + " 'networkType VARCHAR(50)', # String type for network types\n", + " 'networkHashrate NUMERIC', # Numeric type for hash rates\n", + " 'networkDifficulty NUMERIC', # Numeric type for network difficulty\n", + " 'lastNetworkBlockTime TIMESTAMP', # Timestamp for block times\n", + " 'blockHeight INTEGER', # Integer for block height values\n", + " 'connectedPeers INTEGER', # Integer for counting connected peers\n", + " 'rewardType VARCHAR(50)', # String type for reward types\n", + " 'poolEffort NUMERIC', # Numeric type for pool effort\n", + " 'poolTTF NUMERIC', # Numeric type for pool time to find\n", + " # 'db_timestamp TIMESTAMP' # Timestamp for the exact time data was recorded\n", + "]" ] }, { "cell_type": "code", - "execution_count": null, - "id": "e1020365-7984-4708-a8d4-1cdc35e27ce1", + "execution_count": 11, + "id": "b2bef5c1-f8df-4a4b-9a6b-a1af07d5af98", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'fee': 0.9,\n", + " 'paid': 1451.190902122231,\n", + " 'blocks': 55,\n", + " 'last_block_found': 'Sunday, April 28, 2024 at 03:06:52 AM',\n", + " 'enabled': True,\n", + " 'minimumPayment': 0.5,\n", + " 'payoutScheme': 'PPLNS',\n", + " 'connectedMiners': 36,\n", + " 'poolHashrate': 54.27,\n", + " 'sharesPerSecond': 4,\n", + " 'networkType': 'mainnet',\n", + " 'networkHashrate': 15.135751082257066,\n", + " 'networkDifficulty': 1.816290129870848,\n", + " 'lastNetworkBlockTime': '2024-04-28T04:19:33.7752039Z',\n", + " 'blockHeight': 1252595,\n", + " 'connectedPeers': 119,\n", + " 'rewardType': 'POW',\n", + " 'poolEffort': 13.429,\n", + " 'poolTTF': 0.387}" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "import plotly.express as px\n", - "\n", - "fig = px.line(df, x='created', y='hashrate', color='worker', title='Hashrate Over Time for Each Worker')\n", - "fig.show()\n" + "# data['db_timestamp'] = datetime.datetime.now()\n", + "del data['payoutSchemeConfig']\n", + "del data['extra']\n", + "data" ] }, { "cell_type": "code", - "execution_count": null, - "id": "552e7636-5ab0-42fc-a9bf-1c1e0a172e4f", + "execution_count": 12, + "id": "648f4cbe-d870-4c0d-80d5-34ddf39ea83b", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Table data deleted successfully.\n", + "Table block deleted successfully.\n" + ] + } + ], "source": [ - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "\n", - "import random\n", - "\n", - "def generate_random_variable_list(n):\n", - " random_variable_list = []\n", - " for i in range(n):\n", - " random_variable = random.uniform(0.001, 5)\n", - " random_variable_list.append(random_variable)\n", - " return random_variable_list\n", - "\n", - "n = 10 # number of random variables\n", - "y = generate_random_variable_list(n)\n", - "\n", - "x = [*range(0, n)]\n", + "database.delete_table('data')\n", + "database.delete_table('block')\n", "\n", - "df = pd.DataFrame({'x': x, 'y':y})\n", - "df['z'] = df['y'].expanding().mean()\n", + "database.create_table('data', data_cols)\n", + "database.create_table('block', block_cols)\n", "\n", - "\n", - "plt.plot(df['x'], df['y'], label='y')\n", - "plt.plot(df['x'], df['z'], label='z')\n", - "plt.xlabel('x')\n", - "plt.ylabel('y and z')\n", - "plt.title('Plotting y and z over x')\n", - "plt.legend()\n", - "plt.show()" + "database.insert_data('data', data)" ] }, { "cell_type": "code", - "execution_count": null, - "id": "fd16a61e-1eb9-48d3-9d6f-ae5aba2e6df6", - "metadata": {}, - "outputs": [], - "source": [ - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b29d277d-0d5f-4eb8-9951-ef4897d557c9", - "metadata": {}, + "execution_count": 13, + "id": "87504df7-41a7-4239-bf81-cacbf9525ac0", + "metadata": { + "scrolled": true + }, "outputs": [], "source": [ - "df" + "for index, row in block_df.iterrows():\n", + " database.insert_data('block', row.to_dict())\n" ] }, { "cell_type": "code", - "execution_count": null, - "id": "46455eb2-b42c-4882-95c1-fea1fe41b897", - "metadata": {}, - "outputs": [], + "execution_count": 14, + "id": "bf955300-ebca-4f0f-aa1b-59b1f4753e3f", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.658950pending0.4722220.01770056dcc160776a8a7127.022100https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...ErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.658950pending0.5555561.85688250230ed620a8fa0b27.000000https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.285885confirmed1.0000000.11252550a300044822864227.001000https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.443497confirmed1.0000000.244779502468dac362205227.018200https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.443497confirmed1.0000001.03993150d8fd9c81187de227.008800https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...ErgoSigmanauts2024-04-27 04:31:16
5ErgoSigmanauts1251567388383.156547confirmed1.0000000.261117555f000b343364e427.005100https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-26 18:24:58
6ErgoSigmanauts1251499388383.156547confirmed1.0000006.396079507971cae2ee4a1827.004200https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-26 16:00:40
7ErgoSigmanauts1249527315887.249576confirmed1.0000000.34152750164a42c64cc4f127.015100https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...ErgoSigmanauts2024-04-23 22:19:10
8ErgoSigmanauts1249440315887.249576confirmed1.0000000.01921650187b62b18da53527.010000https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-23 19:17:03
9ErgoSigmanauts1249432315887.249576confirmed1.0000000.6392275057d49b44b4ed2127.012200https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...ErgoSigmanauts2024-04-23 19:06:49
10ErgoSigmanauts1249230361687.597350confirmed1.0000001.2624301bdb3e4628f615be27.006300https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...ErgoSigmanauts2024-04-23 12:18:50
11ErgoSigmanauts1248838426627.604763confirmed1.0000000.351294186e549eb8340f1227.034400https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-22 22:07:16
12ErgoSigmanauts1248716402639.913195confirmed1.0000000.6859161c96000783680ce227.008244https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...ErgoSigmanauts2024-04-22 18:11:34
13ErgoSigmanauts1248443380709.272335confirmed1.0000001.001987188b8a2690b7756927.007400https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-22 09:12:21
14ErgoSigmanauts1248031396231.066521confirmed1.0000000.1612051c1800034e77b16627.001960https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-21 18:58:55
15ErgoSigmanauts1247949334193.979483confirmed1.0000000.0949271bf4a728749d7de827.001000https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-21 16:57:09
16ErgoSigmanauts1247906334193.979483confirmed1.0000000.6902871a16000df545608327.026500https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 15:49:03
17ErgoSigmanauts1247634390680.078087confirmed1.0000003.0398631a1329402f2206ed27.069355https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 05:49:18
18ErgoSigmanauts1246555371421.349703confirmed1.0000000.53527512fc6a2219199f2a27.012000https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-19 17:13:40
19ErgoSigmanauts1246329338457.841118confirmed1.0000000.0333131642835a069e4fb927.025700https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 10:06:26
20ErgoSigmanauts1246316338457.841118confirmed1.0000000.072236146857274f45ac2c27.180640https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-19 09:41:15
21ErgoSigmanauts1246282338457.841118confirmed1.0000002.084016164237aca8296f1c27.012601https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 08:45:52
22ErgoSigmanauts1245573345942.822277confirmed1.0000000.11677212a8cc865d1eb6b127.001253https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-18 09:31:37
23ErgoSigmanauts1245528323130.127436confirmed1.0000000.361345126a0007f2a34c7c27.000000https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 08:01:31
24ErgoSigmanauts1245375343213.854779confirmed1.0000000.384602126b001c1226e66627.004100https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 03:11:44
25ErgoSigmanauts1245219385248.184230confirmed1.0000001.361363123200132a4f005327.001000https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-17 21:39:45
26ErgoSigmanauts1244611350337.673747confirmed1.0000000.30406013309b8b1531ac3d27.004400https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-04-17 01:03:11
27ErgoSigmanauts1244487347763.784750confirmed1.0000002.109182126b0037bf192dd927.004000https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-16 20:53:07
28ErgoSigmanauts1243556346496.758155confirmed1.0000000.384074121c61dad76dde6427.002200https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-15 13:26:36
29ErgoSigmanauts1243309317174.205629confirmed1.0000000.4703621232000391a2d9da27.009000https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-15 05:58:59
30ErgoSigmanauts1243018353518.612001confirmed1.0000000.517238124d61659aa64c7a27.076500https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-14 19:46:29
31ErgoSigmanauts1242682379295.328612confirmed1.0000001.39456112200009ea03884927.017500https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-14 07:53:57
32ErgoSigmanauts1241796370202.405388confirmed1.0000001.98051410c71b4fad01f31c27.052025https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-13 01:40:15
33ErgoSigmanauts1240237406987.879722confirmed1.0000000.156104100fe6c78281bfae27.130969https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 21:52:48
34ErgoSigmanauts1240101411836.853619confirmed1.0000000.17779310da0014d0866a1a27.006200https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...ErgoSigmanauts2024-04-10 16:45:58
35ErgoSigmanauts1239922414752.684611confirmed1.0000000.37917010111463352887a327.001100https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 11:38:14
36ErgoSigmanauts1239612395105.076364confirmed1.0000001.27033110c7e206ff3da33e27.029100https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-09 23:57:08
37ErgoSigmanauts1238592386279.122336confirmed1.0000000.60845910c72dc2ea84ee3e27.002000https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-08 14:35:09
38ErgoSigmanauts1238040399941.963788confirmed1.0000001.240973101010806c3bfec230.005000https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...ErgoSigmanauts2024-04-07 19:55:43
39ErgoSigmanauts1236735385434.149366confirmed1.0000000.675790100d40c8c30375f930.025167https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-06 00:11:43
40ErgoSigmanauts1235990387916.169692confirmed1.0000000.52528620058216259db39230.010000https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-04-04 23:46:44
41ErgoSigmanauts1235365466883.931372confirmed1.0000000.169038d0db3663848642f530.068900https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-04 01:40:19
42ErgoSigmanauts1235136433886.497034confirmed1.0000000.348562d4481db8a168230330.007660https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-03 18:22:18
43ErgoSigmanauts1234733425282.536901confirmed1.0000001.926869d43cfb8db6bde05730.008316https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-03 04:57:28
44ErgoSigmanauts1232662385380.245572confirmed1.0000000.025904d88e000ab46f7e8a30.000000https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-31 07:40:29
45ErgoSigmanauts1232628363957.496239confirmed1.0000000.237322d10ffd6af9eca40630.000000https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-03-31 06:53:18
46ErgoSigmanauts1232487360630.583506confirmed1.0000001.012745dee5be1bf40de25e30.013800https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-03-31 02:11:27
47ErgoSigmanauts1231651367785.409859confirmed1.0000000.466819daa5cc820eedd3d930.001500https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 22:22:38
48ErgoSigmanauts1231144405099.842403confirmed1.0000000.329434d88f00142c1483c130.002000https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 04:26:22
49ErgoSigmanauts1230782360986.500966confirmed1.0000000.030553d00cd5ba5f2b167c30.088260https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-03-28 16:41:02
50ErgoSigmanauts1230749360986.500966confirmed1.0000000.287231d8a48cee009b608c30.006550https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-03-28 15:40:37
51ErgoSigmanauts1230547434381.378191confirmed1.0000000.797385d6c1191549ab2f0730.027600https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-28 08:26:49
52ErgoSigmanauts1230104347635.796935confirmed1.0000004.752955d153e8105c7c0b5730.001000https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-27 18:07:25
53ErgoSigmanauts1223980416310.690227confirmed1.0000000.895507300b000932aead3a30.007862https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-03-19 04:19:20
54ErgoSigmanauts1221911421209.622611confirmed1.0000002.867494705c89a6a4e552cf30.007100https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...ErgoSigmanauts2024-03-16 06:45:27
\n", + "
" + ], + "text/plain": [ + " poolid blockheight networkdifficulty status \\\n", + "0 ErgoSigmanauts 1252559 422881.658950 pending \n", + "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "\n", + " confirmationprogress effort transactionconfirmationdata reward \\\n", + "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", + "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.000000 0.112525 50a3000448228642 27.001000 \n", + "3 1.000000 0.244779 502468dac3622052 27.018200 \n", + "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", + "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", + "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", + "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", + "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", + "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.000000 1.394561 12200009ea038849 27.017500 \n", + "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.000000 0.379170 10111463352887a3 27.001100 \n", + "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.000000 0.525286 20058216259db392 30.010000 \n", + "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", + "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "\n", + " infolink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "2 https://explorer.ergoplatform.com/en/blocks/58... \n", + "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "8 https://explorer.ergoplatform.com/en/blocks/22... \n", + "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "11 https://explorer.ergoplatform.com/en/blocks/17... \n", + "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "14 https://explorer.ergoplatform.com/en/blocks/92... \n", + "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "18 https://explorer.ergoplatform.com/en/blocks/40... \n", + "19 https://explorer.ergoplatform.com/en/blocks/32... \n", + "20 https://explorer.ergoplatform.com/en/blocks/02... \n", + "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "25 https://explorer.ergoplatform.com/en/blocks/32... \n", + "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "27 https://explorer.ergoplatform.com/en/blocks/79... \n", + "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "32 https://explorer.ergoplatform.com/en/blocks/39... \n", + "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "34 https://explorer.ergoplatform.com/en/blocks/10... \n", + "35 https://explorer.ergoplatform.com/en/blocks/db... \n", + "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "37 https://explorer.ergoplatform.com/en/blocks/91... \n", + "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "41 https://explorer.ergoplatform.com/en/blocks/00... \n", + "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "43 https://explorer.ergoplatform.com/en/blocks/85... \n", + "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "45 https://explorer.ergoplatform.com/en/blocks/48... \n", + "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "47 https://explorer.ergoplatform.com/en/blocks/20... \n", + "48 https://explorer.ergoplatform.com/en/blocks/27... \n", + "49 https://explorer.ergoplatform.com/en/blocks/33... \n", + "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "53 https://explorer.ergoplatform.com/en/blocks/83... \n", + "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "\n", + " hash \\\n", + "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "\n", + " miner source \\\n", + "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "\n", + " time_found \n", + "0 2024-04-28 03:06:52 \n", + "1 2024-04-28 02:55:03 \n", + "2 2024-04-27 07:59:45 \n", + "3 2024-04-27 06:54:45 \n", + "4 2024-04-27 04:31:16 \n", + "5 2024-04-26 18:24:58 \n", + "6 2024-04-26 16:00:40 \n", + "7 2024-04-23 22:19:10 \n", + "8 2024-04-23 19:17:03 \n", + "9 2024-04-23 19:06:49 \n", + "10 2024-04-23 12:18:50 \n", + "11 2024-04-22 22:07:16 \n", + "12 2024-04-22 18:11:34 \n", + "13 2024-04-22 09:12:21 \n", + "14 2024-04-21 18:58:55 \n", + "15 2024-04-21 16:57:09 \n", + "16 2024-04-21 15:49:03 \n", + "17 2024-04-21 05:49:18 \n", + "18 2024-04-19 17:13:40 \n", + "19 2024-04-19 10:06:26 \n", + "20 2024-04-19 09:41:15 \n", + "21 2024-04-19 08:45:52 \n", + "22 2024-04-18 09:31:37 \n", + "23 2024-04-18 08:01:31 \n", + "24 2024-04-18 03:11:44 \n", + "25 2024-04-17 21:39:45 \n", + "26 2024-04-17 01:03:11 \n", + "27 2024-04-16 20:53:07 \n", + "28 2024-04-15 13:26:36 \n", + "29 2024-04-15 05:58:59 \n", + "30 2024-04-14 19:46:29 \n", + "31 2024-04-14 07:53:57 \n", + "32 2024-04-13 01:40:15 \n", + "33 2024-04-10 21:52:48 \n", + "34 2024-04-10 16:45:58 \n", + "35 2024-04-10 11:38:14 \n", + "36 2024-04-09 23:57:08 \n", + "37 2024-04-08 14:35:09 \n", + "38 2024-04-07 19:55:43 \n", + "39 2024-04-06 00:11:43 \n", + "40 2024-04-04 23:46:44 \n", + "41 2024-04-04 01:40:19 \n", + "42 2024-04-03 18:22:18 \n", + "43 2024-04-03 04:57:28 \n", + "44 2024-03-31 07:40:29 \n", + "45 2024-03-31 06:53:18 \n", + "46 2024-03-31 02:11:27 \n", + "47 2024-03-29 22:22:38 \n", + "48 2024-03-29 04:26:22 \n", + "49 2024-03-28 16:41:02 \n", + "50 2024-03-28 15:40:37 \n", + "51 2024-03-28 08:26:49 \n", + "52 2024-03-27 18:07:25 \n", + "53 2024-03-19 04:19:20 \n", + "54 2024-03-16 06:45:27 " + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "n = df.melt(id_vars=['x'])\n", - "n" + "sample = database.fetch_data('block')\n", + "sample = sample.sort_values('blockheight', ascending=False)\n", + "sample" ] }, { "cell_type": "code", - "execution_count": null, - "id": "9a878db0-d159-4318-98c7-533574ddafed", + "execution_count": 15, + "id": "7b17a189-4564-4261-9899-38b2705a0787", "metadata": {}, "outputs": [], "source": [ - "random.randrange(0,5)" + "new_block_data = {\n", + " 'poolId': 'pool123',\n", + " 'blockHeight': 672835,\n", + " 'networkDifficulty': 19.963,\n", + " 'status': 'unconfirmed',\n", + " 'confirmationProgress': 0.7, # This is a critical field for the logic.\n", + " 'effort': 120.5,\n", + " 'transactionConfirmationData': 'tx12345',\n", + " 'reward': 6.25,\n", + " 'infoLink': 'http://example.com/info',\n", + " 'hash': 'hash_value_123456', # Unique identifier\n", + " 'miner': 'miner_name',\n", + " 'source': 'source_info',\n", + " 'created': '2022-01-01T12:00:00',\n", + " # 'rolling_effort': 10,\n", + "}\n", + "# database.update_or_insert('block', new_block_data)\n", + "# database.fetch_data('block')" ] }, { "cell_type": "code", - "execution_count": null, - "id": "875331c5-c3b2-4d58-a517-7b4e25378622", - "metadata": {}, - "outputs": [], + "execution_count": 16, + "id": "947f6417-0033-4e42-86e6-6b8a3eba9eb0", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.658950pending0.4722220.01770056dcc160776a8a7127.022100https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...ErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.658950pending0.5555561.85688250230ed620a8fa0b27.000000https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.285885confirmed1.0000000.11252550a300044822864227.001000https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.443497confirmed1.0000000.244779502468dac362205227.018200https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.443497confirmed1.0000001.03993150d8fd9c81187de227.008800https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...ErgoSigmanauts2024-04-27 04:31:16
5ErgoSigmanauts1251567388383.156547confirmed1.0000000.261117555f000b343364e427.005100https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-26 18:24:58
6ErgoSigmanauts1251499388383.156547confirmed1.0000006.396079507971cae2ee4a1827.004200https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-26 16:00:40
7ErgoSigmanauts1249527315887.249576confirmed1.0000000.34152750164a42c64cc4f127.015100https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...ErgoSigmanauts2024-04-23 22:19:10
8ErgoSigmanauts1249440315887.249576confirmed1.0000000.01921650187b62b18da53527.010000https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-23 19:17:03
9ErgoSigmanauts1249432315887.249576confirmed1.0000000.6392275057d49b44b4ed2127.012200https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...ErgoSigmanauts2024-04-23 19:06:49
10ErgoSigmanauts1249230361687.597350confirmed1.0000001.2624301bdb3e4628f615be27.006300https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...ErgoSigmanauts2024-04-23 12:18:50
11ErgoSigmanauts1248838426627.604763confirmed1.0000000.351294186e549eb8340f1227.034400https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-22 22:07:16
12ErgoSigmanauts1248716402639.913195confirmed1.0000000.6859161c96000783680ce227.008244https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...ErgoSigmanauts2024-04-22 18:11:34
13ErgoSigmanauts1248443380709.272335confirmed1.0000001.001987188b8a2690b7756927.007400https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-22 09:12:21
14ErgoSigmanauts1248031396231.066521confirmed1.0000000.1612051c1800034e77b16627.001960https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-21 18:58:55
15ErgoSigmanauts1247949334193.979483confirmed1.0000000.0949271bf4a728749d7de827.001000https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-21 16:57:09
16ErgoSigmanauts1247906334193.979483confirmed1.0000000.6902871a16000df545608327.026500https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 15:49:03
17ErgoSigmanauts1247634390680.078087confirmed1.0000003.0398631a1329402f2206ed27.069355https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 05:49:18
18ErgoSigmanauts1246555371421.349703confirmed1.0000000.53527512fc6a2219199f2a27.012000https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-19 17:13:40
19ErgoSigmanauts1246329338457.841118confirmed1.0000000.0333131642835a069e4fb927.025700https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 10:06:26
20ErgoSigmanauts1246316338457.841118confirmed1.0000000.072236146857274f45ac2c27.180640https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-19 09:41:15
21ErgoSigmanauts1246282338457.841118confirmed1.0000002.084016164237aca8296f1c27.012601https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 08:45:52
22ErgoSigmanauts1245573345942.822277confirmed1.0000000.11677212a8cc865d1eb6b127.001253https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-18 09:31:37
23ErgoSigmanauts1245528323130.127436confirmed1.0000000.361345126a0007f2a34c7c27.000000https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 08:01:31
24ErgoSigmanauts1245375343213.854779confirmed1.0000000.384602126b001c1226e66627.004100https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 03:11:44
25ErgoSigmanauts1245219385248.184230confirmed1.0000001.361363123200132a4f005327.001000https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-17 21:39:45
26ErgoSigmanauts1244611350337.673747confirmed1.0000000.30406013309b8b1531ac3d27.004400https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-04-17 01:03:11
27ErgoSigmanauts1244487347763.784750confirmed1.0000002.109182126b0037bf192dd927.004000https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-16 20:53:07
28ErgoSigmanauts1243556346496.758155confirmed1.0000000.384074121c61dad76dde6427.002200https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-15 13:26:36
29ErgoSigmanauts1243309317174.205629confirmed1.0000000.4703621232000391a2d9da27.009000https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-15 05:58:59
30ErgoSigmanauts1243018353518.612001confirmed1.0000000.517238124d61659aa64c7a27.076500https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-14 19:46:29
31ErgoSigmanauts1242682379295.328612confirmed1.0000001.39456112200009ea03884927.017500https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-14 07:53:57
32ErgoSigmanauts1241796370202.405388confirmed1.0000001.98051410c71b4fad01f31c27.052025https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-13 01:40:15
33ErgoSigmanauts1240237406987.879722confirmed1.0000000.156104100fe6c78281bfae27.130969https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 21:52:48
34ErgoSigmanauts1240101411836.853619confirmed1.0000000.17779310da0014d0866a1a27.006200https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...ErgoSigmanauts2024-04-10 16:45:58
35ErgoSigmanauts1239922414752.684611confirmed1.0000000.37917010111463352887a327.001100https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 11:38:14
36ErgoSigmanauts1239612395105.076364confirmed1.0000001.27033110c7e206ff3da33e27.029100https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-09 23:57:08
37ErgoSigmanauts1238592386279.122336confirmed1.0000000.60845910c72dc2ea84ee3e27.002000https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-08 14:35:09
38ErgoSigmanauts1238040399941.963788confirmed1.0000001.240973101010806c3bfec230.005000https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...ErgoSigmanauts2024-04-07 19:55:43
39ErgoSigmanauts1236735385434.149366confirmed1.0000000.675790100d40c8c30375f930.025167https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-06 00:11:43
40ErgoSigmanauts1235990387916.169692confirmed1.0000000.52528620058216259db39230.010000https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-04-04 23:46:44
41ErgoSigmanauts1235365466883.931372confirmed1.0000000.169038d0db3663848642f530.068900https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-04 01:40:19
42ErgoSigmanauts1235136433886.497034confirmed1.0000000.348562d4481db8a168230330.007660https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-03 18:22:18
43ErgoSigmanauts1234733425282.536901confirmed1.0000001.926869d43cfb8db6bde05730.008316https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-03 04:57:28
44ErgoSigmanauts1232662385380.245572confirmed1.0000000.025904d88e000ab46f7e8a30.000000https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-31 07:40:29
45ErgoSigmanauts1232628363957.496239confirmed1.0000000.237322d10ffd6af9eca40630.000000https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-03-31 06:53:18
46ErgoSigmanauts1232487360630.583506confirmed1.0000001.012745dee5be1bf40de25e30.013800https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-03-31 02:11:27
47ErgoSigmanauts1231651367785.409859confirmed1.0000000.466819daa5cc820eedd3d930.001500https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 22:22:38
48ErgoSigmanauts1231144405099.842403confirmed1.0000000.329434d88f00142c1483c130.002000https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 04:26:22
49ErgoSigmanauts1230782360986.500966confirmed1.0000000.030553d00cd5ba5f2b167c30.088260https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-03-28 16:41:02
50ErgoSigmanauts1230749360986.500966confirmed1.0000000.287231d8a48cee009b608c30.006550https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-03-28 15:40:37
51ErgoSigmanauts1230547434381.378191confirmed1.0000000.797385d6c1191549ab2f0730.027600https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-28 08:26:49
52ErgoSigmanauts1230104347635.796935confirmed1.0000004.752955d153e8105c7c0b5730.001000https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-27 18:07:25
53ErgoSigmanauts1223980416310.690227confirmed1.0000000.895507300b000932aead3a30.007862https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-03-19 04:19:20
54ErgoSigmanauts1221911421209.622611confirmed1.0000002.867494705c89a6a4e552cf30.007100https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...ErgoSigmanauts2024-03-16 06:45:27
\n", + "
" + ], + "text/plain": [ + " poolid blockheight networkdifficulty status \\\n", + "0 ErgoSigmanauts 1252559 422881.658950 pending \n", + "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "\n", + " confirmationprogress effort transactionconfirmationdata reward \\\n", + "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", + "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.000000 0.112525 50a3000448228642 27.001000 \n", + "3 1.000000 0.244779 502468dac3622052 27.018200 \n", + "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", + "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", + "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", + "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", + "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", + "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.000000 1.394561 12200009ea038849 27.017500 \n", + "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.000000 0.379170 10111463352887a3 27.001100 \n", + "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.000000 0.525286 20058216259db392 30.010000 \n", + "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", + "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "\n", + " infolink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "2 https://explorer.ergoplatform.com/en/blocks/58... \n", + "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "8 https://explorer.ergoplatform.com/en/blocks/22... \n", + "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "11 https://explorer.ergoplatform.com/en/blocks/17... \n", + "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "14 https://explorer.ergoplatform.com/en/blocks/92... \n", + "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "18 https://explorer.ergoplatform.com/en/blocks/40... \n", + "19 https://explorer.ergoplatform.com/en/blocks/32... \n", + "20 https://explorer.ergoplatform.com/en/blocks/02... \n", + "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "25 https://explorer.ergoplatform.com/en/blocks/32... \n", + "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "27 https://explorer.ergoplatform.com/en/blocks/79... \n", + "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "32 https://explorer.ergoplatform.com/en/blocks/39... \n", + "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "34 https://explorer.ergoplatform.com/en/blocks/10... \n", + "35 https://explorer.ergoplatform.com/en/blocks/db... \n", + "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "37 https://explorer.ergoplatform.com/en/blocks/91... \n", + "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "41 https://explorer.ergoplatform.com/en/blocks/00... \n", + "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "43 https://explorer.ergoplatform.com/en/blocks/85... \n", + "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "45 https://explorer.ergoplatform.com/en/blocks/48... \n", + "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "47 https://explorer.ergoplatform.com/en/blocks/20... \n", + "48 https://explorer.ergoplatform.com/en/blocks/27... \n", + "49 https://explorer.ergoplatform.com/en/blocks/33... \n", + "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "53 https://explorer.ergoplatform.com/en/blocks/83... \n", + "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "\n", + " hash \\\n", + "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "\n", + " miner source \\\n", + "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "\n", + " time_found \n", + "0 2024-04-28 03:06:52 \n", + "1 2024-04-28 02:55:03 \n", + "2 2024-04-27 07:59:45 \n", + "3 2024-04-27 06:54:45 \n", + "4 2024-04-27 04:31:16 \n", + "5 2024-04-26 18:24:58 \n", + "6 2024-04-26 16:00:40 \n", + "7 2024-04-23 22:19:10 \n", + "8 2024-04-23 19:17:03 \n", + "9 2024-04-23 19:06:49 \n", + "10 2024-04-23 12:18:50 \n", + "11 2024-04-22 22:07:16 \n", + "12 2024-04-22 18:11:34 \n", + "13 2024-04-22 09:12:21 \n", + "14 2024-04-21 18:58:55 \n", + "15 2024-04-21 16:57:09 \n", + "16 2024-04-21 15:49:03 \n", + "17 2024-04-21 05:49:18 \n", + "18 2024-04-19 17:13:40 \n", + "19 2024-04-19 10:06:26 \n", + "20 2024-04-19 09:41:15 \n", + "21 2024-04-19 08:45:52 \n", + "22 2024-04-18 09:31:37 \n", + "23 2024-04-18 08:01:31 \n", + "24 2024-04-18 03:11:44 \n", + "25 2024-04-17 21:39:45 \n", + "26 2024-04-17 01:03:11 \n", + "27 2024-04-16 20:53:07 \n", + "28 2024-04-15 13:26:36 \n", + "29 2024-04-15 05:58:59 \n", + "30 2024-04-14 19:46:29 \n", + "31 2024-04-14 07:53:57 \n", + "32 2024-04-13 01:40:15 \n", + "33 2024-04-10 21:52:48 \n", + "34 2024-04-10 16:45:58 \n", + "35 2024-04-10 11:38:14 \n", + "36 2024-04-09 23:57:08 \n", + "37 2024-04-08 14:35:09 \n", + "38 2024-04-07 19:55:43 \n", + "39 2024-04-06 00:11:43 \n", + "40 2024-04-04 23:46:44 \n", + "41 2024-04-04 01:40:19 \n", + "42 2024-04-03 18:22:18 \n", + "43 2024-04-03 04:57:28 \n", + "44 2024-03-31 07:40:29 \n", + "45 2024-03-31 06:53:18 \n", + "46 2024-03-31 02:11:27 \n", + "47 2024-03-29 22:22:38 \n", + "48 2024-03-29 04:26:22 \n", + "49 2024-03-28 16:41:02 \n", + "50 2024-03-28 15:40:37 \n", + "51 2024-03-28 08:26:49 \n", + "52 2024-03-27 18:07:25 \n", + "53 2024-03-19 04:19:20 \n", + "54 2024-03-16 06:45:27 " + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "url ='http://15.204.211.130:4000/api/pools/ErgoSigmanauts'\n", + "block_data.append(new_block_data)\n", + "for data in block_data:\n", + " # data['rolling_effort'] = data['effort'].expanding().mean()\n", + " data['time_found'] = format_datetime(data.pop('created'))\n", + " data['confirmationProgress'] = data['confirmationProgress'] * 100\n", + " data['networkDifficulty'] = round(data['networkDifficulty'], 2)\n", + " data['effort'] = round(data['effort'], 2)\n", + " data['reward'] = round(data['reward'], 2)\n", + " data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:])\n", + " # database.update_or_insert('block', data)\n", "\n", - "pool = reader.get_api_data(url)['pool']\n", - "pool.keys()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "f9ea973a-0471-4330-af72-a6388acc59e2", - "metadata": {}, - "outputs": [], - "source": [ - "pool['poolEffort']" + "database.fetch_data('block')" ] }, { "cell_type": "code", - "execution_count": null, - "id": "04a2a4a7-219a-460a-aa59-20f3dee6b6cf", - "metadata": {}, - "outputs": [], - "source": [ - "payment_data = pool['paymentProcessing']\n", - "del payment_data['enabled']\n", - "del payment_data['payoutSchemeConfig']\n", - "del payment_data['extra']" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "c7addd0e-06cd-4573-910d-2b6948e64273", - "metadata": {}, - "outputs": [], - "source": [ - "payment_data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "4ec326f7-81aa-44e2-8d7e-59fa6236dd4f", - "metadata": {}, - "outputs": [], + "execution_count": 17, + "id": "64e890c1-c59e-4ac8-9bc2-98664033a5a1", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.658950pending0.4722220.01770056dcc160776a8a7127.022100https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...ErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.658950pending0.5555561.85688250230ed620a8fa0b27.000000https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.285885confirmed1.0000000.11252550a300044822864227.001000https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.443497confirmed1.0000000.244779502468dac362205227.018200https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.443497confirmed1.0000001.03993150d8fd9c81187de227.008800https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...ErgoSigmanauts2024-04-27 04:31:16
5ErgoSigmanauts1251567388383.156547confirmed1.0000000.261117555f000b343364e427.005100https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-26 18:24:58
6ErgoSigmanauts1251499388383.156547confirmed1.0000006.396079507971cae2ee4a1827.004200https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-26 16:00:40
7ErgoSigmanauts1249527315887.249576confirmed1.0000000.34152750164a42c64cc4f127.015100https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...ErgoSigmanauts2024-04-23 22:19:10
8ErgoSigmanauts1249440315887.249576confirmed1.0000000.01921650187b62b18da53527.010000https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-23 19:17:03
9ErgoSigmanauts1249432315887.249576confirmed1.0000000.6392275057d49b44b4ed2127.012200https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...ErgoSigmanauts2024-04-23 19:06:49
10ErgoSigmanauts1249230361687.597350confirmed1.0000001.2624301bdb3e4628f615be27.006300https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...ErgoSigmanauts2024-04-23 12:18:50
11ErgoSigmanauts1248838426627.604763confirmed1.0000000.351294186e549eb8340f1227.034400https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-22 22:07:16
12ErgoSigmanauts1248716402639.913195confirmed1.0000000.6859161c96000783680ce227.008244https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...ErgoSigmanauts2024-04-22 18:11:34
13ErgoSigmanauts1248443380709.272335confirmed1.0000001.001987188b8a2690b7756927.007400https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-22 09:12:21
14ErgoSigmanauts1248031396231.066521confirmed1.0000000.1612051c1800034e77b16627.001960https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-21 18:58:55
15ErgoSigmanauts1247949334193.979483confirmed1.0000000.0949271bf4a728749d7de827.001000https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-21 16:57:09
16ErgoSigmanauts1247906334193.979483confirmed1.0000000.6902871a16000df545608327.026500https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 15:49:03
17ErgoSigmanauts1247634390680.078087confirmed1.0000003.0398631a1329402f2206ed27.069355https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 05:49:18
18ErgoSigmanauts1246555371421.349703confirmed1.0000000.53527512fc6a2219199f2a27.012000https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-19 17:13:40
19ErgoSigmanauts1246329338457.841118confirmed1.0000000.0333131642835a069e4fb927.025700https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 10:06:26
20ErgoSigmanauts1246316338457.841118confirmed1.0000000.072236146857274f45ac2c27.180640https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-19 09:41:15
21ErgoSigmanauts1246282338457.841118confirmed1.0000002.084016164237aca8296f1c27.012601https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 08:45:52
22ErgoSigmanauts1245573345942.822277confirmed1.0000000.11677212a8cc865d1eb6b127.001253https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-18 09:31:37
23ErgoSigmanauts1245528323130.127436confirmed1.0000000.361345126a0007f2a34c7c27.000000https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 08:01:31
24ErgoSigmanauts1245375343213.854779confirmed1.0000000.384602126b001c1226e66627.004100https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 03:11:44
25ErgoSigmanauts1245219385248.184230confirmed1.0000001.361363123200132a4f005327.001000https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-17 21:39:45
26ErgoSigmanauts1244611350337.673747confirmed1.0000000.30406013309b8b1531ac3d27.004400https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-04-17 01:03:11
27ErgoSigmanauts1244487347763.784750confirmed1.0000002.109182126b0037bf192dd927.004000https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-16 20:53:07
28ErgoSigmanauts1243556346496.758155confirmed1.0000000.384074121c61dad76dde6427.002200https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-15 13:26:36
29ErgoSigmanauts1243309317174.205629confirmed1.0000000.4703621232000391a2d9da27.009000https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-15 05:58:59
30ErgoSigmanauts1243018353518.612001confirmed1.0000000.517238124d61659aa64c7a27.076500https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-14 19:46:29
31ErgoSigmanauts1242682379295.328612confirmed1.0000001.39456112200009ea03884927.017500https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-14 07:53:57
32ErgoSigmanauts1241796370202.405388confirmed1.0000001.98051410c71b4fad01f31c27.052025https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-13 01:40:15
33ErgoSigmanauts1240237406987.879722confirmed1.0000000.156104100fe6c78281bfae27.130969https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 21:52:48
34ErgoSigmanauts1240101411836.853619confirmed1.0000000.17779310da0014d0866a1a27.006200https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...ErgoSigmanauts2024-04-10 16:45:58
35ErgoSigmanauts1239922414752.684611confirmed1.0000000.37917010111463352887a327.001100https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 11:38:14
36ErgoSigmanauts1239612395105.076364confirmed1.0000001.27033110c7e206ff3da33e27.029100https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-09 23:57:08
37ErgoSigmanauts1238592386279.122336confirmed1.0000000.60845910c72dc2ea84ee3e27.002000https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-08 14:35:09
38ErgoSigmanauts1238040399941.963788confirmed1.0000001.240973101010806c3bfec230.005000https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...ErgoSigmanauts2024-04-07 19:55:43
39ErgoSigmanauts1236735385434.149366confirmed1.0000000.675790100d40c8c30375f930.025167https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-06 00:11:43
40ErgoSigmanauts1235990387916.169692confirmed1.0000000.52528620058216259db39230.010000https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-04-04 23:46:44
41ErgoSigmanauts1235365466883.931372confirmed1.0000000.169038d0db3663848642f530.068900https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-04 01:40:19
42ErgoSigmanauts1235136433886.497034confirmed1.0000000.348562d4481db8a168230330.007660https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-03 18:22:18
43ErgoSigmanauts1234733425282.536901confirmed1.0000001.926869d43cfb8db6bde05730.008316https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-03 04:57:28
44ErgoSigmanauts1232662385380.245572confirmed1.0000000.025904d88e000ab46f7e8a30.000000https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-31 07:40:29
45ErgoSigmanauts1232628363957.496239confirmed1.0000000.237322d10ffd6af9eca40630.000000https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-03-31 06:53:18
46ErgoSigmanauts1232487360630.583506confirmed1.0000001.012745dee5be1bf40de25e30.013800https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-03-31 02:11:27
47ErgoSigmanauts1231651367785.409859confirmed1.0000000.466819daa5cc820eedd3d930.001500https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 22:22:38
48ErgoSigmanauts1231144405099.842403confirmed1.0000000.329434d88f00142c1483c130.002000https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 04:26:22
49ErgoSigmanauts1230782360986.500966confirmed1.0000000.030553d00cd5ba5f2b167c30.088260https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-03-28 16:41:02
50ErgoSigmanauts1230749360986.500966confirmed1.0000000.287231d8a48cee009b608c30.006550https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-03-28 15:40:37
51ErgoSigmanauts1230547434381.378191confirmed1.0000000.797385d6c1191549ab2f0730.027600https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-28 08:26:49
52ErgoSigmanauts1230104347635.796935confirmed1.0000004.752955d153e8105c7c0b5730.001000https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-27 18:07:25
53ErgoSigmanauts1223980416310.690227confirmed1.0000000.895507300b000932aead3a30.007862https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-03-19 04:19:20
54ErgoSigmanauts1221911421209.622611confirmed1.0000002.867494705c89a6a4e552cf30.007100https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...ErgoSigmanauts2024-03-16 06:45:27
\n", + "
" + ], + "text/plain": [ + " poolid blockheight networkdifficulty status \\\n", + "0 ErgoSigmanauts 1252559 422881.658950 pending \n", + "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "\n", + " confirmationprogress effort transactionconfirmationdata reward \\\n", + "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", + "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.000000 0.112525 50a3000448228642 27.001000 \n", + "3 1.000000 0.244779 502468dac3622052 27.018200 \n", + "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", + "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", + "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", + "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", + "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", + "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.000000 1.394561 12200009ea038849 27.017500 \n", + "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.000000 0.379170 10111463352887a3 27.001100 \n", + "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.000000 0.525286 20058216259db392 30.010000 \n", + "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", + "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "\n", + " infolink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "2 https://explorer.ergoplatform.com/en/blocks/58... \n", + "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "8 https://explorer.ergoplatform.com/en/blocks/22... \n", + "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "11 https://explorer.ergoplatform.com/en/blocks/17... \n", + "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "14 https://explorer.ergoplatform.com/en/blocks/92... \n", + "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "18 https://explorer.ergoplatform.com/en/blocks/40... \n", + "19 https://explorer.ergoplatform.com/en/blocks/32... \n", + "20 https://explorer.ergoplatform.com/en/blocks/02... \n", + "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "25 https://explorer.ergoplatform.com/en/blocks/32... \n", + "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "27 https://explorer.ergoplatform.com/en/blocks/79... \n", + "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "32 https://explorer.ergoplatform.com/en/blocks/39... \n", + "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "34 https://explorer.ergoplatform.com/en/blocks/10... \n", + "35 https://explorer.ergoplatform.com/en/blocks/db... \n", + "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "37 https://explorer.ergoplatform.com/en/blocks/91... \n", + "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "41 https://explorer.ergoplatform.com/en/blocks/00... \n", + "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "43 https://explorer.ergoplatform.com/en/blocks/85... \n", + "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "45 https://explorer.ergoplatform.com/en/blocks/48... \n", + "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "47 https://explorer.ergoplatform.com/en/blocks/20... \n", + "48 https://explorer.ergoplatform.com/en/blocks/27... \n", + "49 https://explorer.ergoplatform.com/en/blocks/33... \n", + "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "53 https://explorer.ergoplatform.com/en/blocks/83... \n", + "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "\n", + " hash \\\n", + "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "\n", + " miner source \\\n", + "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "\n", + " time_found \n", + "0 2024-04-28 03:06:52 \n", + "1 2024-04-28 02:55:03 \n", + "2 2024-04-27 07:59:45 \n", + "3 2024-04-27 06:54:45 \n", + "4 2024-04-27 04:31:16 \n", + "5 2024-04-26 18:24:58 \n", + "6 2024-04-26 16:00:40 \n", + "7 2024-04-23 22:19:10 \n", + "8 2024-04-23 19:17:03 \n", + "9 2024-04-23 19:06:49 \n", + "10 2024-04-23 12:18:50 \n", + "11 2024-04-22 22:07:16 \n", + "12 2024-04-22 18:11:34 \n", + "13 2024-04-22 09:12:21 \n", + "14 2024-04-21 18:58:55 \n", + "15 2024-04-21 16:57:09 \n", + "16 2024-04-21 15:49:03 \n", + "17 2024-04-21 05:49:18 \n", + "18 2024-04-19 17:13:40 \n", + "19 2024-04-19 10:06:26 \n", + "20 2024-04-19 09:41:15 \n", + "21 2024-04-19 08:45:52 \n", + "22 2024-04-18 09:31:37 \n", + "23 2024-04-18 08:01:31 \n", + "24 2024-04-18 03:11:44 \n", + "25 2024-04-17 21:39:45 \n", + "26 2024-04-17 01:03:11 \n", + "27 2024-04-16 20:53:07 \n", + "28 2024-04-15 13:26:36 \n", + "29 2024-04-15 05:58:59 \n", + "30 2024-04-14 19:46:29 \n", + "31 2024-04-14 07:53:57 \n", + "32 2024-04-13 01:40:15 \n", + "33 2024-04-10 21:52:48 \n", + "34 2024-04-10 16:45:58 \n", + "35 2024-04-10 11:38:14 \n", + "36 2024-04-09 23:57:08 \n", + "37 2024-04-08 14:35:09 \n", + "38 2024-04-07 19:55:43 \n", + "39 2024-04-06 00:11:43 \n", + "40 2024-04-04 23:46:44 \n", + "41 2024-04-04 01:40:19 \n", + "42 2024-04-03 18:22:18 \n", + "43 2024-04-03 04:57:28 \n", + "44 2024-03-31 07:40:29 \n", + "45 2024-03-31 06:53:18 \n", + "46 2024-03-31 02:11:27 \n", + "47 2024-03-29 22:22:38 \n", + "48 2024-03-29 04:26:22 \n", + "49 2024-03-28 16:41:02 \n", + "50 2024-03-28 15:40:37 \n", + "51 2024-03-28 08:26:49 \n", + "52 2024-03-27 18:07:25 \n", + "53 2024-03-19 04:19:20 \n", + "54 2024-03-16 06:45:27 " + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "port_data = pool['ports']\n", + "data = {\n", + " 'poolId': 'pool123',\n", + " 'blockHeight': 672835,\n", + " 'networkDifficulty': 19.963,\n", + " 'status': 'confirmed',\n", + " 'confirmationProgress': 1, # This is a critical field for the logic.\n", + " 'effort': 120.5,\n", + " 'transactionConfirmationData': 'tx12345',\n", + " 'reward': 6.25,\n", + " 'infoLink': 'http://example.com/info',\n", + " 'hash': 'hash_value_123456', # Unique identifier\n", + " 'miner': 'miner_name',\n", + " 'source': 'source_info',\n", + " 'created': '2022-01-01T12:00:00'\n", + "}\n", + "# block_data.append(new_block_data_2)\n", + "# for data in block_data:\n", + " # data['rolling_effort'] = data['effort'].expanding().mean()\n", + "data['time_found'] = format_datetime(data.pop('created'))\n", + "data['confirmationProgress'] = data['confirmationProgress'] * 100\n", + "data['networkDifficulty'] = round(data['networkDifficulty'], 2)\n", + "data['effort'] = round(data['effort'], 2)\n", + "data['reward'] = round(data['reward'], 2)\n", + "data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:])\n", + "# database.update_or_insert('block', data)\n", "\n", - "ls = []\n", - "for port in port_data:\n", - " temp = port_data[port]\n", - " if 'pikes_peak' in temp['name']:\n", - " high_or_low = 'Greater Than 10GH/s'\n", - " else:\n", - " high_or_low = 'Lower Than 10GH/s'\n", - " ls.append([temp['name'], port, high_or_low, temp['tls']])\n", - "df = pd.DataFrame(ls, columns=['Name', 'Port', 'Hashrate Threshold', 'TLS'])\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5783369d-a845-464b-8b71-9e8367654aa7", - "metadata": {}, - "outputs": [], - "source": [ - "pool_fee = pool['poolFeePercent']\n", - "pool_stats = pool['poolStats']\n", - "net_stats = pool['networkStats']\n", - "total_paid = pool['totalPaid']\n", - "total_blocks = pool['totalBlocks']\n", - "last_block_found = pool['lastPoolBlockTime']\n", - "pool_effort = pool['poolEffort']" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "633f2021-d800-4a91-8856-2df66b1d4a08", - "metadata": {}, - "outputs": [], - "source": [ - "net_stats\n", - "del net_stats['connectedPeers']\n", - "del net_stats['rewardType']\n", - "del net_stats['networkType']" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7da87e9e-2f1b-4666-9dc0-07317362fc94", - "metadata": {}, - "outputs": [], - "source": [ - "pool_stats" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "bb63de0b-8816-4168-bf78-06f494565f7c", - "metadata": {}, - "outputs": [], - "source": [ - "import dash" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cfbfee47-dfba-4e6f-957d-959e8ee5eb4a", - "metadata": {}, - "outputs": [], - "source": [ - "data = reader.get_front_page_data()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fad6250d-b195-4de8-9cc4-856bb8882fb3", - "metadata": {}, - "outputs": [], - "source": [ - "data['poolHashrate'] = data['poolHashrate'] / 1e9 #GIGA\n", - "data['poolHashrate'] " + "database.fetch_data('block')" ] }, { "cell_type": "code", - "execution_count": null, - "id": "2db9c6ad-154b-4340-bdfc-6db9a5dd4e70", + "execution_count": 18, + "id": "87e75bbe-1f4e-408c-bca1-4f4bc691e749", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'Pending Shares': 350.037,\n", + " 'Pending Balance': 0.0,\n", + " 'Total Paid': 277.147,\n", + " 'Paid Today': 0,\n", + " 'Schema': 'PPLNS',\n", + " 'Price': 1.36,\n", + " 'Last Payment': '2024-04-27',\n", + " 'lastPaymentLink': 'https://explorer.ergoplatform.com/en/transactions/21ed45c3e6e33a2c8ff6320ad9cd82a2f5197463f54f1312ebac9449e0288e49'}" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "data" + "reader.get_miner_payment_stats('9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk')" ] }, { "cell_type": "code", - "execution_count": null, - "id": "7eb58bdc-ad12-4b33-8593-74be1ebcef08", + "execution_count": 19, + "id": "023eb723-741b-480e-a696-ac772a258c46", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "51" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "last_block_found" + "len('9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk')" ] }, { "cell_type": "code", - "execution_count": null, - "id": "175d7e4a-9a01-458e-a265-3eee1d16bebb", + "execution_count": 20, + "id": "b606029e-c7e4-47a1-b1b5-9902c645bea1", "metadata": {}, "outputs": [], "source": [ - "df = reader.get_all_miner_data('9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk')\n", - "df" + "payment_headers = ['pendingShares NUMERIC',\n", + " 'pendingBalance NUMERIC',\n", + " 'totalPaid NUMERIC',\n", + " 'todayPaid NUMERIC',\n", + " 'Schema VARCHAR(50)',\n", + " 'Price NUMERIC',\n", + " 'lastPayment VARCHAR(50)',\n", + " 'lastPaymentLink TEXT',\n", + " 'created_at TIMESTAMP',\n", + " 'miner VARCHAR(100)']\n", + "\n", + "live_worker_headers = ['worker VARCHAR(50)', 'hashrate NUMERIC', 'shares_per_second NUMERIC',\n", + " 'created TIMESTAMP', 'miner VARCHAR(100)', 'effort NUMERIC',\n", + " 'ttf NUMERIC', 'last_block_found VARCHAR(100)']\n", + "\n", + "performance_headers = ['worker VARCHAR(50)', 'hashrate NUMERIC', 'shares_per_second NUMERIC',\n", + " 'created TIMESTAMP', 'miner VARCHAR(60)']\n" ] }, { "cell_type": "code", - "execution_count": null, - "id": "4c016022-edd8-4876-8033-e1c4c9b252f4", + "execution_count": 21, + "id": "33e18bdb-6bd5-4f77-8ef3-38e6e86225a1", "metadata": {}, "outputs": [], "source": [ - "df[df.wallet == '9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk']" + "def worker_to_df(data):\n", + " rows = []\n", + " for worker, details in data['workers'].items():\n", + " row = {\n", + " 'worker': worker,\n", + " 'hashrate': round(details['hashrate'] / 1e6, 2), #MH/s\n", + " 'shares_per_second': round(details['sharesPerSecond'], 2),\n", + " 'created': format_datetime(data['created'])\n", + " }\n", + " rows.append(row)\n", + " \n", + " # Create DataFrame\n", + " return pd.DataFrame(rows)\n", + "\n", + "def insert_df_rows(df, table):\n", + " for index, row in df.iterrows():\n", + " database.insert_data(table, row.to_dict())\n" ] }, { "cell_type": "code", - "execution_count": null, - "id": "5cebf792-a5c3-4c17-b632-0ac384b23b3d", - "metadata": {}, - "outputs": [], + "execution_count": 22, + "id": "ed44bf4e-691d-4a53-ad56-2e43d56153d5", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Table payment deleted successfully.\n", + "Table live_worker deleted successfully.\n", + "Table performance deleted successfully.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "no live data\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'Schema', 'Price', 'lastPayment', 'lastPaymentLink'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "no live data\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'Schema', 'Price', 'lastPayment', 'lastPaymentLink'])\n", + "no live data\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'Schema', 'Price', 'lastPayment', 'lastPaymentLink'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "no live data\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "no live data\n", + "payments inserted\n", + "performance inserted\n", + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", + "live worker inserted\n", + "payments inserted\n", + "performance inserted\n" + ] + } + ], "source": [ - "from datetime import datetime\n", - "import pytz\n", + "database = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db')\n", + "database.connect()\n", + "database.get_cursor()\n", "\n", - "def calculate_mining_effort(network_difficulty, network_hashrate, pool_hashrate, last_block_timestamp):\n", - " \"\"\"\n", - " Calculate the mining effort for the pool to find a block on Ergo blockchain based on the given timestamp.\n", - " \n", - " :param network_difficulty: The current difficulty of the Ergo network.\n", - " :param network_hashrate: The total hash rate of the Ergo network (in hashes per second).\n", - " :param pool_hashrate: The hash rate of the mining pool (in hashes per second).\n", - " :param last_block_timestamp: Timestamp of the last block found in ISO 8601 format.\n", - " :return: The estimated mining effort for the pool.\n", - " \"\"\"\n", - " # Parse the last block timestamp\n", - " time_format = '%Y-%m-%d %H:%M:%S' \n", - " last_block_time = datetime.strptime(last_block_timestamp, time_format)\n", - " last_block_time = last_block_time.replace(tzinfo=pytz.utc) # Assume the timestamp is in UTC\n", - " \n", - " # Get the current time in UTC\n", - " now = datetime.now(pytz.utc)\n", - " \n", - " # Calculate the time difference in seconds\n", - " time_since_last_block = (now - last_block_time).total_seconds()\n", - " \n", - " # Hashes to find a block at current difficulty\n", - " hashes_to_find_block = network_difficulty # This is a simplification\n", - " \n", - " # Total hashes by the network in the time since last block\n", - " total_network_hashes = network_hashrate * time_since_last_block\n", - " \n", - " # Pool's share of the total network hashes\n", - " pool_share_of_hashes = (pool_hashrate / network_hashrate) * total_network_hashes\n", - " \n", - " # Effort is the pool's share of hashes divided by the number of hashes to find a block\n", - " effort = pool_share_of_hashes / hashes_to_find_block\n", - " \n", - " return effort\n", + "database.delete_table('payment')\n", + "database.delete_table('live_worker')\n", + "database.delete_table('performance')\n", + "database.create_table('payment', payment_headers)\n", + "database.create_table('live_worker', live_worker_headers)\n", + "database.create_table('performance', performance_headers)\n", "\n", - "# Example usage:\n", - "network_difficulty = 1.83e15 # Example difficulty\n", - "network_hashrate = 15.4e12 # Example total network hash rate (1 PH/s)\n", - "pool_hashrate = 13.3e9 # Example pool hash rate (100 TH/s)\n", - "last_block_timestamp = \"2024-03-31 07:40:29\"\n", + "miner_data = reader.get_api_data('{}/{}'.format(reader.base_api, 'miners?pageSize=5000'))\n", + "miner_ls = [sample['miner'] for sample in miner_data]\n", "\n", - "effort = calculate_mining_effort(network_difficulty, network_hashrate, pool_hashrate, last_block_timestamp)\n", - "print(f\"The estimated mining effort for the pool since the last block is: {effort}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "944ef89b-18af-497c-94de-c9e905763d88", - "metadata": {}, - "outputs": [], - "source": [ - "from datetime import datetime\n", + "time_now = pd.Timestamp.now()\n", + "stats = database.fetch_data('data')\n", + "block_data = database.fetch_data('block')\n", + "networkHashrate = stats['networkhashrate'][0] # use logic to get the lastest not just the first index\n", + "networkDifficulty = stats['networkdifficulty'][0]\n", + "for miner in miner_ls:\n", + " # miner = '9hR5AWGMWcp9vvMvuiGNVzoiDfBztQqzBiK67iZwLCDWYLuUTaw'\n", + " # miner = '9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'\n", + " url = '{}/{}/{}'.format(reader.base_api, 'miners', miner)\n", + " mining_data = reader.get_api_data(url)\n", + " # print(mining_data.keys())\n", "\n", - "date_time_str = '2024-03-19 04:19:20'\n", - "format = '%Y-%m-%d %H:%M:%S' # Added a space between '%d' and '%H'\n", - "date_time_obj = datetime.strptime(date_time_str, format)\n", + " \n", + " payment_data = {k: v for k, v in mining_data.items() if k not in ['performance', 'performanceSamples']}\n", + " payment_data['Schema'] = 'PPLNS'\n", + " payment_data['Price'] = 2.0\n", "\n", - "print(date_time_obj)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "192c454d-04e6-4d9a-b604-7e74cfbd5a33", - "metadata": {}, - "outputs": [], - "source": [ - "type(date_time_str)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "21e26329-64c6-4df0-a389-8b3cee19fa68", - "metadata": {}, - "outputs": [], - "source": [ - "miners = reader.get_miner_ls()\n", - "data = []\n", - "for miner in miners:\n", - " temp = reader.get_miner_samples(miner)\n", - " data.append(temp)\n", + " try:\n", + " payment_data['lastPayment'] = mining_data['lastPayment'][:-17]\n", + " payment_data['lastPaymentLink'] = mining_data['lastPaymentLink']\n", + " \n", + " except KeyError: \n", + " payment_data['lastPayment'] = 'N/A'\n", + " payment_data['lastPaymentLink'] = 'Keep Mining!'\n", "\n", - "df = pd.concat(data)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "c48a8d55-40e4-4e31-bd83-bc88efecf7cd", - "metadata": {}, - "outputs": [], - "source": [ - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "483b65a3-52bd-44a7-aff4-2dfb99e38320", - "metadata": {}, - "outputs": [], - "source": [ - "ls = []\n", - "for date in df.created.unique():\n", - " temp = df[df.created == date]\n", - " ls.append([date, temp.hashrate.sum() /1e9])\n", + " except TypeError:\n", + " payment_data['lastPayment'] = 'N/A'\n", + " payment_data['lastPaymentLink'] = 'Keep Mining!'\n", + " print(payment_data.keys())\n", + " \n", + " performance_samples = mining_data.pop('performanceSamples')\n", + " \n", + " payment_data['created_at'] = time_now\n", + " payment_data['miner'] = miner\n", + " # short_miner = '{}...{}'.format(data['miner'][:3], data['miner'][-5:])\n", + " miner_blocks = block_data[block_data.miner == miner]\n", + " \n", + " performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples)\n", + " performance_df['miner'] = miner\n", "\n", - "n = pd.DataFrame(ls, columns=['Date', 'Hashrate'])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fc62e6bc-59fd-489f-8212-a7d0d58d938d", - "metadata": {}, - "outputs": [], - "source": [ - "n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "13d9541c-bdfc-41bc-bb94-273a213ae049", - "metadata": {}, - "outputs": [], - "source": [ - "df = reader.get_all_miner_data('9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk')\n", - "ls = []\n", - "for miner in df.miner.unique():\n", - " temp = df[df.miner == miner]\n", - " ls.append([miner, temp.hashrate.sum(), temp.sharesPerSecond.sum()])\n", + " if miner_blocks.empty:\n", + " # still need to adjust to pull from performance table for this miner\n", + " latest = min(performance_df.created)\n", + " last_block_found = 'N/A'\n", "\n", - "d = pd.DataFrame(ls, columns=['Miner', 'Hashrate', 'SharesPerSecond'])\n", - "d.Miner.unique()[0]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "586604e4-7657-446c-b7a5-682790405127", - "metadata": {}, - "outputs": [], - "source": [ - "latest = max(df.created)\n", - "latest_data = df[df.created == latest]\n", - "my_data = latest_data[latest_data.my_wallet == True]\n", - "my_data = my_data.filter(['worker', 'hashrate', 'sharesPerSecond'])\n", - "total_hash = my_data.hashrate.sum()\n", - "total_shares = my_data.sharesPerSecond.sum()\n", - "ls = ['Totals', total_hash, total_shares]\n", + " else:\n", + " latest = str(max(miner_blocks.time_found))\n", + " last_block_found = latest\n", "\n", - "d = pd.DataFrame([ls], columns=['worker', 'hashrate', 'sharesPerSecond'])\n", - "data = pd.concat([my_data, d])\n", - "data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cdc7b9b0-df6d-43d0-be31-b0a98c6440e6", - "metadata": {}, - "outputs": [], - "source": [ - "data.hashrate" + " try:\n", + " live_performance = mining_data.pop('performance')\n", + " live_df = worker_to_df(live_performance)\n", + " live_df['miner'] = miner\n", + " live_df['effort'] = [reader.calculate_mining_effort(networkDifficulty, networkHashrate,\n", + " temp_hash, latest) for temp_hash in live_df.hashrate]\n", + " live_df['ttf'] = [reader.calculate_time_to_find_block(networkDifficulty, networkHashrate,\n", + " temp_hash) for temp_hash in live_df.hashrate]\n", + " live_df['last_block_found'] = last_block_found\n", + " \n", + " insert_df_rows(live_df, 'live_worker') \n", + " print('live worker inserted')\n", + " \n", + " except KeyError:\n", + " live_df = pd.DataFrame()\n", + " print('no live data')\n", + " \n", + " database.insert_data('payment', payment_data)\n", + " print('payments inserted')\n", + "\n", + " insert_df_rows(performance_df, 'performance') \n", + " print('performance inserted')\n", + " # break\n" ] }, { "cell_type": "code", - "execution_count": null, - "id": "807083a5-2e79-4a48-a899-b026caffbd91", + "execution_count": 23, + "id": "632ec239-2721-4f5f-9bcd-e9592622f183", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
workerhashrateshares_per_secondcreatedminereffortttflast_block_found
03950c56d934.090.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...6.28622.5052024-04-26 18:24:58
16600xt_Rig574.020.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...3.86336.6222024-04-26 18:24:58
28GPU_Rig1176.150.102024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...7.91417.8732024-04-26 18:24:58
3EpycDownstairs570.600.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...3.84036.8422024-04-26 18:24:58
4MinerDude_12x759.690.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...5.11227.6722024-04-26 18:24:58
...........................
65STINKY199.330.042024-04-28 04:20:349fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...1.002105.463N/A
66qx3090288.820.062024-04-28 04:20:349eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...27.96172.7852024-04-07 19:55:43
67FubinbouErgoTrexMiner145.260.032024-04-28 04:20:349iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...0.730144.719N/A
68rustinmyeye115.000.032024-04-28 04:20:349iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...23.469182.7992024-03-16 06:45:27
69waga138.000.032024-04-28 04:20:349gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...0.694152.332N/A
\n", + "

70 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " worker hashrate shares_per_second created \\\n", + "0 3950c56d 934.09 0.07 2024-04-28 04:20:34 \n", + "1 6600xt_Rig 574.02 0.07 2024-04-28 04:20:34 \n", + "2 8GPU_Rig 1176.15 0.10 2024-04-28 04:20:34 \n", + "3 EpycDownstairs 570.60 0.07 2024-04-28 04:20:34 \n", + "4 MinerDude_12x 759.69 0.07 2024-04-28 04:20:34 \n", + ".. ... ... ... ... \n", + "65 STINKY 199.33 0.04 2024-04-28 04:20:34 \n", + "66 qx3090 288.82 0.06 2024-04-28 04:20:34 \n", + "67 FubinbouErgoTrexMiner 145.26 0.03 2024-04-28 04:20:34 \n", + "68 rustinmyeye 115.00 0.03 2024-04-28 04:20:34 \n", + "69 waga 138.00 0.03 2024-04-28 04:20:34 \n", + "\n", + " miner effort ttf \\\n", + "0 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 6.286 22.505 \n", + "1 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 3.863 36.622 \n", + "2 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 7.914 17.873 \n", + "3 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 3.840 36.842 \n", + "4 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 5.112 27.672 \n", + ".. ... ... ... \n", + "65 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... 1.002 105.463 \n", + "66 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... 27.961 72.785 \n", + "67 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... 0.730 144.719 \n", + "68 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... 23.469 182.799 \n", + "69 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 0.694 152.332 \n", + "\n", + " last_block_found \n", + "0 2024-04-26 18:24:58 \n", + "1 2024-04-26 18:24:58 \n", + "2 2024-04-26 18:24:58 \n", + "3 2024-04-26 18:24:58 \n", + "4 2024-04-26 18:24:58 \n", + ".. ... \n", + "65 N/A \n", + "66 2024-04-07 19:55:43 \n", + "67 N/A \n", + "68 2024-03-16 06:45:27 \n", + "69 N/A \n", + "\n", + "[70 rows x 8 columns]" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "data['ttf'] = [reader.calculate_time_to_find_block(network_difficulty, network_hashrate, hash, latest) for hash in data.hashrate]\n", - "data['effort'] = [reader.calculate_mining_effort(network_difficulty, network_hashrate, hash, latest) for hash in data.hashrate]" + "lw = database.fetch_data('live_worker')\n", + "lw" ] }, { "cell_type": "code", - "execution_count": null, - "id": "cbbdeebd-227a-419d-ad7f-3da615fb4c05", + "execution_count": 39, + "id": "91ba8790-2106-4b10-8498-7a8b151df1df", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
workerhashrateshares_per_secondcreatedminer
03950c56d759.340.062024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
16600xt_Rig439.510.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
28GPU_Rig1170.950.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
38GPU_Rig_3060ti1252.930.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
4EpycDownstairs480.550.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
\n", + "
" + ], + "text/plain": [ + " worker hashrate shares_per_second created \\\n", + "0 3950c56d 759.34 0.06 2024-04-27 03:00:00 \n", + "1 6600xt_Rig 439.51 0.07 2024-04-27 03:00:00 \n", + "2 8GPU_Rig 1170.95 0.07 2024-04-27 03:00:00 \n", + "3 8GPU_Rig_3060ti 1252.93 0.07 2024-04-27 03:00:00 \n", + "4 EpycDownstairs 480.55 0.07 2024-04-27 03:00:00 \n", + "\n", + " miner \n", + "0 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", + "1 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", + "2 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", + "3 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", + "4 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... " + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "wallet ='9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'" + "df = database.fetch_data('performance')\n", + "df.head()# need to create totals per created column for total hashrate plot" ] }, { "cell_type": "code", - "execution_count": null, - "id": "397d7fca-17f0-4d0a-b0d9-8bb40f18ecdb", + "execution_count": 36, + "id": "1553dcfc-06e4-40a9-bc2e-bff1a1d415f4", "metadata": {}, "outputs": [], "source": [ - "reader.get_all_miner_data(wallet)" + "aggregated_df = df.groupby('created').agg({\n", + " 'hashrate': 'sum', # Sum of hashrate\n", + " 'shares_per_second': 'sum', # Sum of shares_per_second\n", + " 'worker': 'nunique', # Count of unique workers\n", + " 'miner': 'nunique' # Count of unique miners\n", + "})" ] }, { "cell_type": "code", - "execution_count": null, - "id": "1b86a5dd-74da-4b79-8be6-a548c3c27556", + "execution_count": 38, + "id": "72f378de-b73e-4766-bd92-3877a58ff28d", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
hashrateshares_per_secondworkerminer
created
2024-04-27 03:00:0049.147144.306434
2024-04-27 04:00:0050.538984.406535
2024-04-27 05:00:0051.388284.336536
2024-04-27 06:00:0051.859794.326436
2024-04-27 07:00:0052.230234.366335
2024-04-27 08:00:0051.435804.336335
2024-04-27 09:00:0052.074634.346335
2024-04-27 10:00:0051.237564.256334
2024-04-27 11:00:0052.393304.376336
2024-04-27 12:00:0051.207374.356437
2024-04-27 13:00:0049.461674.166137
2024-04-27 14:00:0049.241924.176136
2024-04-27 15:00:0048.150434.196136
2024-04-27 16:00:0049.284024.256136
2024-04-27 17:00:0049.419254.196236
2024-04-27 18:00:0049.536714.166135
2024-04-27 19:00:0049.892404.196234
2024-04-27 20:00:0049.936114.036134
2024-04-27 21:00:0049.543304.096335
2024-04-27 22:00:0050.328344.276235
2024-04-27 23:00:0051.521994.326336
2024-04-28 00:00:0049.367424.256335
2024-04-28 01:00:0049.759264.246334
2024-04-28 02:00:0049.252684.306434
\n", + "
" + ], + "text/plain": [ + " hashrate shares_per_second worker miner\n", + "created \n", + "2024-04-27 03:00:00 49.14714 4.30 64 34\n", + "2024-04-27 04:00:00 50.53898 4.40 65 35\n", + "2024-04-27 05:00:00 51.38828 4.33 65 36\n", + "2024-04-27 06:00:00 51.85979 4.32 64 36\n", + "2024-04-27 07:00:00 52.23023 4.36 63 35\n", + "2024-04-27 08:00:00 51.43580 4.33 63 35\n", + "2024-04-27 09:00:00 52.07463 4.34 63 35\n", + "2024-04-27 10:00:00 51.23756 4.25 63 34\n", + "2024-04-27 11:00:00 52.39330 4.37 63 36\n", + "2024-04-27 12:00:00 51.20737 4.35 64 37\n", + "2024-04-27 13:00:00 49.46167 4.16 61 37\n", + "2024-04-27 14:00:00 49.24192 4.17 61 36\n", + "2024-04-27 15:00:00 48.15043 4.19 61 36\n", + "2024-04-27 16:00:00 49.28402 4.25 61 36\n", + "2024-04-27 17:00:00 49.41925 4.19 62 36\n", + "2024-04-27 18:00:00 49.53671 4.16 61 35\n", + "2024-04-27 19:00:00 49.89240 4.19 62 34\n", + "2024-04-27 20:00:00 49.93611 4.03 61 34\n", + "2024-04-27 21:00:00 49.54330 4.09 63 35\n", + "2024-04-27 22:00:00 50.32834 4.27 62 35\n", + "2024-04-27 23:00:00 51.52199 4.32 63 36\n", + "2024-04-28 00:00:00 49.36742 4.25 63 35\n", + "2024-04-28 01:00:00 49.75926 4.24 63 34\n", + "2024-04-28 02:00:00 49.25268 4.30 64 34" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "pool_df, _ = reader.get_pool_stats(wallet) \n", - "mining_df, performance_df = reader.get_mining_stats(wallet)" + "aggregated_df['hashrate'] = aggregated_df['hashrate'] / 1e3 # converts MH/s to Gh/s\n", + "aggregated_df" ] }, { "cell_type": "code", - "execution_count": null, - "id": "cf5f2d8a-13c5-43fa-a641-bf3b2fadaa0a", + "execution_count": 26, + "id": "cfe43a1b-9634-4e6e-84ca-bac8d95bbadc", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
pendingsharespendingbalancetotalpaidtodaypaidschemapricelastpaymentlastpaymentlinkcreated_atminer
0299.3366420.00000042.1517100.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
1352.4957130.00000094.1999540.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
2350.0365240.000000277.1466650.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...
3292.3840570.00000064.8815500.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...
4243.0267950.000000204.9677670.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...
5235.8352550.00000055.8385320.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...
6254.0899990.000000198.6029260.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
752.4335710.00000017.3956550.0PPLNS2.02024-04-26https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...
8163.5716800.00000019.6832090.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...
9169.8243070.00000012.6072520.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj...
1026.0368050.0329770.0000000.0PPLNS2.0N/AKeep Mining!2024-04-27 22:21:56.1378019hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd...
1185.4507440.0000001.0184070.0PPLNS2.02024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ...
12121.7501730.00000045.3675500.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5...
13105.8240460.00000052.5351570.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...
1483.5709280.0000002.9329750.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q...
1579.6565460.00000065.7585870.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...
1670.7282110.0000002.4371050.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...
1769.6700580.00000016.3806950.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN...
1869.3792340.0000005.2123760.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...
1973.8044410.00000061.5138420.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...
2066.2112780.4894154.4954120.0PPLNS2.02024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS...
2165.4715710.0000006.8158300.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA...
2227.7553170.2907124.6018410.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...
235.6201670.0000004.1592340.0PPLNS2.02024-04-22https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gW4BxS6x8pF7BVMsE2VPpKTEHaDB9Nw1mp6MEpn5MWAmX...
2420.9483320.25247012.9167440.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...
2533.0235700.2342234.2059620.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...
2626.3946810.00000017.3218990.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...
276.1212080.0841533.0795220.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD...
2822.0241450.1556872.1573970.0PPLNS2.02024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y...
2927.4835730.39154018.3547300.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...
3022.1979140.00000017.2067110.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89...
3121.9597240.1592413.5965240.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf...
320.0181900.0000000.0000000.0PPLNS2.0N/AKeep Mining!2024-04-27 22:21:56.1378019g4iUef8r8MuiDmR6bgADB5Bj6NYL6AsVUv31ERnmWJskL...
3320.6486050.0000004.0493370.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM...
346.9340770.2019450.0000000.0PPLNS2.0N/AKeep Mining!2024-04-27 22:21:56.1378019fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...
3517.9196690.00000015.7311720.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...
3610.0028080.0772472.3317810.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...
374.7110830.1782600.1634870.0PPLNS2.02024-04-18https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fvDaBsLKmzP67Cp2i2bmhM1359HhJCrej8y5EGoUcmXDr...
388.2181270.4735136.0441670.0PPLNS2.02024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...
393.3054470.0000000.3264440.0PPLNS2.02024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi...
406.9376800.4013040.5197830.0PPLNS2.02024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...
\n", + "
" + ], + "text/plain": [ + " pendingshares pendingbalance totalpaid todaypaid schema price \\\n", + "0 299.336642 0.000000 42.151710 0.0 PPLNS 2.0 \n", + "1 352.495713 0.000000 94.199954 0.0 PPLNS 2.0 \n", + "2 350.036524 0.000000 277.146665 0.0 PPLNS 2.0 \n", + "3 292.384057 0.000000 64.881550 0.0 PPLNS 2.0 \n", + "4 243.026795 0.000000 204.967767 0.0 PPLNS 2.0 \n", + "5 235.835255 0.000000 55.838532 0.0 PPLNS 2.0 \n", + "6 254.089999 0.000000 198.602926 0.0 PPLNS 2.0 \n", + "7 52.433571 0.000000 17.395655 0.0 PPLNS 2.0 \n", + "8 163.571680 0.000000 19.683209 0.0 PPLNS 2.0 \n", + "9 169.824307 0.000000 12.607252 0.0 PPLNS 2.0 \n", + "10 26.036805 0.032977 0.000000 0.0 PPLNS 2.0 \n", + "11 85.450744 0.000000 1.018407 0.0 PPLNS 2.0 \n", + "12 121.750173 0.000000 45.367550 0.0 PPLNS 2.0 \n", + "13 105.824046 0.000000 52.535157 0.0 PPLNS 2.0 \n", + "14 83.570928 0.000000 2.932975 0.0 PPLNS 2.0 \n", + "15 79.656546 0.000000 65.758587 0.0 PPLNS 2.0 \n", + "16 70.728211 0.000000 2.437105 0.0 PPLNS 2.0 \n", + "17 69.670058 0.000000 16.380695 0.0 PPLNS 2.0 \n", + "18 69.379234 0.000000 5.212376 0.0 PPLNS 2.0 \n", + "19 73.804441 0.000000 61.513842 0.0 PPLNS 2.0 \n", + "20 66.211278 0.489415 4.495412 0.0 PPLNS 2.0 \n", + "21 65.471571 0.000000 6.815830 0.0 PPLNS 2.0 \n", + "22 27.755317 0.290712 4.601841 0.0 PPLNS 2.0 \n", + "23 5.620167 0.000000 4.159234 0.0 PPLNS 2.0 \n", + "24 20.948332 0.252470 12.916744 0.0 PPLNS 2.0 \n", + "25 33.023570 0.234223 4.205962 0.0 PPLNS 2.0 \n", + "26 26.394681 0.000000 17.321899 0.0 PPLNS 2.0 \n", + "27 6.121208 0.084153 3.079522 0.0 PPLNS 2.0 \n", + "28 22.024145 0.155687 2.157397 0.0 PPLNS 2.0 \n", + "29 27.483573 0.391540 18.354730 0.0 PPLNS 2.0 \n", + "30 22.197914 0.000000 17.206711 0.0 PPLNS 2.0 \n", + "31 21.959724 0.159241 3.596524 0.0 PPLNS 2.0 \n", + "32 0.018190 0.000000 0.000000 0.0 PPLNS 2.0 \n", + "33 20.648605 0.000000 4.049337 0.0 PPLNS 2.0 \n", + "34 6.934077 0.201945 0.000000 0.0 PPLNS 2.0 \n", + "35 17.919669 0.000000 15.731172 0.0 PPLNS 2.0 \n", + "36 10.002808 0.077247 2.331781 0.0 PPLNS 2.0 \n", + "37 4.711083 0.178260 0.163487 0.0 PPLNS 2.0 \n", + "38 8.218127 0.473513 6.044167 0.0 PPLNS 2.0 \n", + "39 3.305447 0.000000 0.326444 0.0 PPLNS 2.0 \n", + "40 6.937680 0.401304 0.519783 0.0 PPLNS 2.0 \n", + "\n", + " lastpayment lastpaymentlink \\\n", + "0 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "1 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "2 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "3 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "4 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "5 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "6 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "7 2024-04-26 https://explorer.ergoplatform.com/en/transacti... \n", + "8 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "9 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "10 N/A Keep Mining! \n", + "11 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", + "12 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "13 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "14 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "15 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "16 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "17 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "18 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "19 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "20 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", + "21 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "22 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "23 2024-04-22 https://explorer.ergoplatform.com/en/transacti... \n", + "24 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "25 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "26 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "27 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "28 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", + "29 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "30 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "31 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "32 N/A Keep Mining! \n", + "33 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "34 N/A Keep Mining! \n", + "35 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "36 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "37 2024-04-18 https://explorer.ergoplatform.com/en/transacti... \n", + "38 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", + "39 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", + "40 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", + "\n", + " created_at \\\n", + "0 2024-04-27 22:21:56.137801 \n", + "1 2024-04-27 22:21:56.137801 \n", + "2 2024-04-27 22:21:56.137801 \n", + "3 2024-04-27 22:21:56.137801 \n", + "4 2024-04-27 22:21:56.137801 \n", + "5 2024-04-27 22:21:56.137801 \n", + "6 2024-04-27 22:21:56.137801 \n", + "7 2024-04-27 22:21:56.137801 \n", + "8 2024-04-27 22:21:56.137801 \n", + "9 2024-04-27 22:21:56.137801 \n", + "10 2024-04-27 22:21:56.137801 \n", + "11 2024-04-27 22:21:56.137801 \n", + "12 2024-04-27 22:21:56.137801 \n", + "13 2024-04-27 22:21:56.137801 \n", + "14 2024-04-27 22:21:56.137801 \n", + "15 2024-04-27 22:21:56.137801 \n", + "16 2024-04-27 22:21:56.137801 \n", + "17 2024-04-27 22:21:56.137801 \n", + "18 2024-04-27 22:21:56.137801 \n", + "19 2024-04-27 22:21:56.137801 \n", + "20 2024-04-27 22:21:56.137801 \n", + "21 2024-04-27 22:21:56.137801 \n", + "22 2024-04-27 22:21:56.137801 \n", + "23 2024-04-27 22:21:56.137801 \n", + "24 2024-04-27 22:21:56.137801 \n", + "25 2024-04-27 22:21:56.137801 \n", + "26 2024-04-27 22:21:56.137801 \n", + "27 2024-04-27 22:21:56.137801 \n", + "28 2024-04-27 22:21:56.137801 \n", + "29 2024-04-27 22:21:56.137801 \n", + "30 2024-04-27 22:21:56.137801 \n", + "31 2024-04-27 22:21:56.137801 \n", + "32 2024-04-27 22:21:56.137801 \n", + "33 2024-04-27 22:21:56.137801 \n", + "34 2024-04-27 22:21:56.137801 \n", + "35 2024-04-27 22:21:56.137801 \n", + "36 2024-04-27 22:21:56.137801 \n", + "37 2024-04-27 22:21:56.137801 \n", + "38 2024-04-27 22:21:56.137801 \n", + "39 2024-04-27 22:21:56.137801 \n", + "40 2024-04-27 22:21:56.137801 \n", + "\n", + " miner \n", + "0 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", + "1 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "2 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... \n", + "3 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... \n", + "4 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... \n", + "5 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... \n", + "6 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "7 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... \n", + "8 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... \n", + "9 9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj... \n", + "10 9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd... \n", + "11 9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ... \n", + "12 9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5... \n", + "13 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... \n", + "14 9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q... \n", + "15 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... \n", + "16 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... \n", + "17 9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN... \n", + "18 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... \n", + "19 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... \n", + "20 9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS... \n", + "21 9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA... \n", + "22 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... \n", + "23 9gW4BxS6x8pF7BVMsE2VPpKTEHaDB9Nw1mp6MEpn5MWAmX... \n", + "24 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... \n", + "25 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... \n", + "26 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... \n", + "27 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD... \n", + "28 9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y... \n", + "29 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... \n", + "30 9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89... \n", + "31 9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf... \n", + "32 9g4iUef8r8MuiDmR6bgADB5Bj6NYL6AsVUv31ERnmWJskL... \n", + "33 9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM... \n", + "34 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... \n", + "35 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... \n", + "36 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... \n", + "37 9fvDaBsLKmzP67Cp2i2bmhM1359HhJCrej8y5EGoUcmXDr... \n", + "38 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... \n", + "39 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi... \n", + "40 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... " + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "mining_df" + "df = database.fetch_data('payment')\n", + "df" ] }, { "cell_type": "code", - "execution_count": null, - "id": "cf76bab9-5ba5-4719-b0b0-3e48a344c273", + "execution_count": 27, + "id": "9f89db75-7384-42f9-982f-95160f68a7c3", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + } + ], "source": [ - "miners = reader.get_miner_ls()\n", - "ls = []\n", - "for miner in miners:\n", - " df, _ = reader.get_mining_stats(miner)\n", - " shares = df[df['Mining Stats'] == 'pendingShares'].Values[0]\n", - " ls.append([miner, shares])\n", - "\n", - "n_df = pd.DataFrame(ls, columns=['Miner', 'Shares'])\n" + "block = database.fetch_data('block')" ] }, { "cell_type": "code", - "execution_count": null, - "id": "1060c93a-1612-4fc0-a0d4-d327c8a1eff1", - "metadata": {}, - "outputs": [], + "execution_count": 28, + "id": "0add200d-87cf-4d81-9377-6152824aafa3", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.658950pending0.4722220.01770056dcc160776a8a7127.022100https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...ErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.658950pending0.5555561.85688250230ed620a8fa0b27.000000https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.285885confirmed1.0000000.11252550a300044822864227.001000https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.443497confirmed1.0000000.244779502468dac362205227.018200https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.443497confirmed1.0000001.03993150d8fd9c81187de227.008800https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...ErgoSigmanauts2024-04-27 04:31:16
5ErgoSigmanauts1251567388383.156547confirmed1.0000000.261117555f000b343364e427.005100https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-26 18:24:58
6ErgoSigmanauts1251499388383.156547confirmed1.0000006.396079507971cae2ee4a1827.004200https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-26 16:00:40
7ErgoSigmanauts1249527315887.249576confirmed1.0000000.34152750164a42c64cc4f127.015100https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...ErgoSigmanauts2024-04-23 22:19:10
8ErgoSigmanauts1249440315887.249576confirmed1.0000000.01921650187b62b18da53527.010000https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-23 19:17:03
9ErgoSigmanauts1249432315887.249576confirmed1.0000000.6392275057d49b44b4ed2127.012200https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...ErgoSigmanauts2024-04-23 19:06:49
10ErgoSigmanauts1249230361687.597350confirmed1.0000001.2624301bdb3e4628f615be27.006300https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...ErgoSigmanauts2024-04-23 12:18:50
11ErgoSigmanauts1248838426627.604763confirmed1.0000000.351294186e549eb8340f1227.034400https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-22 22:07:16
12ErgoSigmanauts1248716402639.913195confirmed1.0000000.6859161c96000783680ce227.008244https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...ErgoSigmanauts2024-04-22 18:11:34
13ErgoSigmanauts1248443380709.272335confirmed1.0000001.001987188b8a2690b7756927.007400https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-22 09:12:21
14ErgoSigmanauts1248031396231.066521confirmed1.0000000.1612051c1800034e77b16627.001960https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-21 18:58:55
15ErgoSigmanauts1247949334193.979483confirmed1.0000000.0949271bf4a728749d7de827.001000https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-21 16:57:09
16ErgoSigmanauts1247906334193.979483confirmed1.0000000.6902871a16000df545608327.026500https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 15:49:03
17ErgoSigmanauts1247634390680.078087confirmed1.0000003.0398631a1329402f2206ed27.069355https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 05:49:18
18ErgoSigmanauts1246555371421.349703confirmed1.0000000.53527512fc6a2219199f2a27.012000https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-19 17:13:40
19ErgoSigmanauts1246329338457.841118confirmed1.0000000.0333131642835a069e4fb927.025700https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 10:06:26
20ErgoSigmanauts1246316338457.841118confirmed1.0000000.072236146857274f45ac2c27.180640https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-19 09:41:15
21ErgoSigmanauts1246282338457.841118confirmed1.0000002.084016164237aca8296f1c27.012601https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 08:45:52
22ErgoSigmanauts1245573345942.822277confirmed1.0000000.11677212a8cc865d1eb6b127.001253https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-18 09:31:37
23ErgoSigmanauts1245528323130.127436confirmed1.0000000.361345126a0007f2a34c7c27.000000https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 08:01:31
24ErgoSigmanauts1245375343213.854779confirmed1.0000000.384602126b001c1226e66627.004100https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 03:11:44
25ErgoSigmanauts1245219385248.184230confirmed1.0000001.361363123200132a4f005327.001000https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-17 21:39:45
26ErgoSigmanauts1244611350337.673747confirmed1.0000000.30406013309b8b1531ac3d27.004400https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-04-17 01:03:11
27ErgoSigmanauts1244487347763.784750confirmed1.0000002.109182126b0037bf192dd927.004000https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-16 20:53:07
28ErgoSigmanauts1243556346496.758155confirmed1.0000000.384074121c61dad76dde6427.002200https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-15 13:26:36
29ErgoSigmanauts1243309317174.205629confirmed1.0000000.4703621232000391a2d9da27.009000https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-15 05:58:59
30ErgoSigmanauts1243018353518.612001confirmed1.0000000.517238124d61659aa64c7a27.076500https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-14 19:46:29
31ErgoSigmanauts1242682379295.328612confirmed1.0000001.39456112200009ea03884927.017500https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-14 07:53:57
32ErgoSigmanauts1241796370202.405388confirmed1.0000001.98051410c71b4fad01f31c27.052025https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-13 01:40:15
33ErgoSigmanauts1240237406987.879722confirmed1.0000000.156104100fe6c78281bfae27.130969https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 21:52:48
34ErgoSigmanauts1240101411836.853619confirmed1.0000000.17779310da0014d0866a1a27.006200https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...ErgoSigmanauts2024-04-10 16:45:58
35ErgoSigmanauts1239922414752.684611confirmed1.0000000.37917010111463352887a327.001100https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 11:38:14
36ErgoSigmanauts1239612395105.076364confirmed1.0000001.27033110c7e206ff3da33e27.029100https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-09 23:57:08
37ErgoSigmanauts1238592386279.122336confirmed1.0000000.60845910c72dc2ea84ee3e27.002000https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-08 14:35:09
38ErgoSigmanauts1238040399941.963788confirmed1.0000001.240973101010806c3bfec230.005000https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...ErgoSigmanauts2024-04-07 19:55:43
39ErgoSigmanauts1236735385434.149366confirmed1.0000000.675790100d40c8c30375f930.025167https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-06 00:11:43
40ErgoSigmanauts1235990387916.169692confirmed1.0000000.52528620058216259db39230.010000https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-04-04 23:46:44
41ErgoSigmanauts1235365466883.931372confirmed1.0000000.169038d0db3663848642f530.068900https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-04 01:40:19
42ErgoSigmanauts1235136433886.497034confirmed1.0000000.348562d4481db8a168230330.007660https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-03 18:22:18
43ErgoSigmanauts1234733425282.536901confirmed1.0000001.926869d43cfb8db6bde05730.008316https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-03 04:57:28
44ErgoSigmanauts1232662385380.245572confirmed1.0000000.025904d88e000ab46f7e8a30.000000https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-31 07:40:29
45ErgoSigmanauts1232628363957.496239confirmed1.0000000.237322d10ffd6af9eca40630.000000https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-03-31 06:53:18
46ErgoSigmanauts1232487360630.583506confirmed1.0000001.012745dee5be1bf40de25e30.013800https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-03-31 02:11:27
47ErgoSigmanauts1231651367785.409859confirmed1.0000000.466819daa5cc820eedd3d930.001500https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 22:22:38
48ErgoSigmanauts1231144405099.842403confirmed1.0000000.329434d88f00142c1483c130.002000https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 04:26:22
49ErgoSigmanauts1230782360986.500966confirmed1.0000000.030553d00cd5ba5f2b167c30.088260https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-03-28 16:41:02
50ErgoSigmanauts1230749360986.500966confirmed1.0000000.287231d8a48cee009b608c30.006550https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-03-28 15:40:37
51ErgoSigmanauts1230547434381.378191confirmed1.0000000.797385d6c1191549ab2f0730.027600https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-28 08:26:49
52ErgoSigmanauts1230104347635.796935confirmed1.0000004.752955d153e8105c7c0b5730.001000https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-27 18:07:25
53ErgoSigmanauts1223980416310.690227confirmed1.0000000.895507300b000932aead3a30.007862https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-03-19 04:19:20
54ErgoSigmanauts1221911421209.622611confirmed1.0000002.867494705c89a6a4e552cf30.007100https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...ErgoSigmanauts2024-03-16 06:45:27
\n", + "
" + ], + "text/plain": [ + " poolid blockheight networkdifficulty status \\\n", + "0 ErgoSigmanauts 1252559 422881.658950 pending \n", + "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "\n", + " confirmationprogress effort transactionconfirmationdata reward \\\n", + "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", + "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.000000 0.112525 50a3000448228642 27.001000 \n", + "3 1.000000 0.244779 502468dac3622052 27.018200 \n", + "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", + "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", + "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", + "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", + "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", + "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.000000 1.394561 12200009ea038849 27.017500 \n", + "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.000000 0.379170 10111463352887a3 27.001100 \n", + "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.000000 0.525286 20058216259db392 30.010000 \n", + "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", + "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "\n", + " infolink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "2 https://explorer.ergoplatform.com/en/blocks/58... \n", + "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "8 https://explorer.ergoplatform.com/en/blocks/22... \n", + "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "11 https://explorer.ergoplatform.com/en/blocks/17... \n", + "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "14 https://explorer.ergoplatform.com/en/blocks/92... \n", + "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "18 https://explorer.ergoplatform.com/en/blocks/40... \n", + "19 https://explorer.ergoplatform.com/en/blocks/32... \n", + "20 https://explorer.ergoplatform.com/en/blocks/02... \n", + "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "25 https://explorer.ergoplatform.com/en/blocks/32... \n", + "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "27 https://explorer.ergoplatform.com/en/blocks/79... \n", + "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "32 https://explorer.ergoplatform.com/en/blocks/39... \n", + "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "34 https://explorer.ergoplatform.com/en/blocks/10... \n", + "35 https://explorer.ergoplatform.com/en/blocks/db... \n", + "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "37 https://explorer.ergoplatform.com/en/blocks/91... \n", + "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "41 https://explorer.ergoplatform.com/en/blocks/00... \n", + "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "43 https://explorer.ergoplatform.com/en/blocks/85... \n", + "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "45 https://explorer.ergoplatform.com/en/blocks/48... \n", + "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "47 https://explorer.ergoplatform.com/en/blocks/20... \n", + "48 https://explorer.ergoplatform.com/en/blocks/27... \n", + "49 https://explorer.ergoplatform.com/en/blocks/33... \n", + "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "53 https://explorer.ergoplatform.com/en/blocks/83... \n", + "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "\n", + " hash \\\n", + "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "\n", + " miner source \\\n", + "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", + "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "\n", + " time_found \n", + "0 2024-04-28 03:06:52 \n", + "1 2024-04-28 02:55:03 \n", + "2 2024-04-27 07:59:45 \n", + "3 2024-04-27 06:54:45 \n", + "4 2024-04-27 04:31:16 \n", + "5 2024-04-26 18:24:58 \n", + "6 2024-04-26 16:00:40 \n", + "7 2024-04-23 22:19:10 \n", + "8 2024-04-23 19:17:03 \n", + "9 2024-04-23 19:06:49 \n", + "10 2024-04-23 12:18:50 \n", + "11 2024-04-22 22:07:16 \n", + "12 2024-04-22 18:11:34 \n", + "13 2024-04-22 09:12:21 \n", + "14 2024-04-21 18:58:55 \n", + "15 2024-04-21 16:57:09 \n", + "16 2024-04-21 15:49:03 \n", + "17 2024-04-21 05:49:18 \n", + "18 2024-04-19 17:13:40 \n", + "19 2024-04-19 10:06:26 \n", + "20 2024-04-19 09:41:15 \n", + "21 2024-04-19 08:45:52 \n", + "22 2024-04-18 09:31:37 \n", + "23 2024-04-18 08:01:31 \n", + "24 2024-04-18 03:11:44 \n", + "25 2024-04-17 21:39:45 \n", + "26 2024-04-17 01:03:11 \n", + "27 2024-04-16 20:53:07 \n", + "28 2024-04-15 13:26:36 \n", + "29 2024-04-15 05:58:59 \n", + "30 2024-04-14 19:46:29 \n", + "31 2024-04-14 07:53:57 \n", + "32 2024-04-13 01:40:15 \n", + "33 2024-04-10 21:52:48 \n", + "34 2024-04-10 16:45:58 \n", + "35 2024-04-10 11:38:14 \n", + "36 2024-04-09 23:57:08 \n", + "37 2024-04-08 14:35:09 \n", + "38 2024-04-07 19:55:43 \n", + "39 2024-04-06 00:11:43 \n", + "40 2024-04-04 23:46:44 \n", + "41 2024-04-04 01:40:19 \n", + "42 2024-04-03 18:22:18 \n", + "43 2024-04-03 04:57:28 \n", + "44 2024-03-31 07:40:29 \n", + "45 2024-03-31 06:53:18 \n", + "46 2024-03-31 02:11:27 \n", + "47 2024-03-29 22:22:38 \n", + "48 2024-03-29 04:26:22 \n", + "49 2024-03-28 16:41:02 \n", + "50 2024-03-28 15:40:37 \n", + "51 2024-03-28 08:26:49 \n", + "52 2024-03-27 18:07:25 \n", + "53 2024-03-19 04:19:20 \n", + "54 2024-03-16 06:45:27 " + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "total = n_df.Shares.sum()\n", - "n_df['p'] = [shares / total for shares in n_df.Shares]\n", - "n_df['r'] = n_df['p'] * 30" + "block" ] }, { "cell_type": "code", - "execution_count": null, - "id": "b6a28994-d187-4c24-8528-b6863455b5ed", + "execution_count": 29, + "id": "b37dcb7b-a82c-468f-9fc5-108541ad9d93", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "0.9001368828200207" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "n_df\n", - "my_df = n_df[n_df.Miner == wallet]\n", - "participation = my_df.p\n" + "block.effort.sum() / len(block.effort)" ] }, { "cell_type": "code", - "execution_count": null, - "id": "abe6a887-a300-48b5-8d0b-2ee11ba739f1", + "execution_count": 30, + "id": "c4815e68-b77d-4513-b240-a9d134115a08", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "0 0.017700\n", + "1 0.937291\n", + "2 0.662369\n", + "3 0.557971\n", + "4 0.654363\n", + "5 0.588822\n", + "6 1.418430\n", + "7 1.283817\n", + "8 1.143306\n", + "9 1.092898\n", + "10 1.108310\n", + "11 1.045226\n", + "12 1.017586\n", + "13 1.016472\n", + "14 0.959454\n", + "15 0.905421\n", + "16 0.892766\n", + "17 1.012050\n", + "18 0.986956\n", + "19 0.939274\n", + "20 0.897986\n", + "21 0.951897\n", + "22 0.915587\n", + "23 0.892494\n", + "24 0.872178\n", + "25 0.890993\n", + "26 0.869255\n", + "27 0.913538\n", + "28 0.895280\n", + "29 0.881116\n", + "30 0.869378\n", + "31 0.885790\n", + "32 0.918964\n", + "33 0.896527\n", + "34 0.875991\n", + "35 0.862191\n", + "36 0.873222\n", + "37 0.866254\n", + "38 0.875862\n", + "39 0.870861\n", + "40 0.862432\n", + "41 0.845923\n", + "42 0.834356\n", + "43 0.859186\n", + "44 0.840669\n", + "45 0.827552\n", + "46 0.831493\n", + "47 0.823895\n", + "48 0.813804\n", + "49 0.798139\n", + "50 0.788121\n", + "51 0.788299\n", + "52 0.863104\n", + "53 0.863704\n", + "54 0.900137\n", + "Name: effort, dtype: float64" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "participation.values[0]" + "block['effort'].expanding().mean()" ] }, { "cell_type": "code", "execution_count": null, - "id": "f17c2109-e58b-497e-8165-aec2abbfe3e7", + "id": "f44984f1-404b-4546-9305-53601c503d4f", "metadata": {}, "outputs": [], "source": [] diff --git a/utils/api_2_db.py b/utils/api_2_db.py index fef91201..74efa8a6 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -28,6 +28,20 @@ def format_datetime(time_str): # If no format matches, raise an exception raise ValueError(f"Time data '{time_str}' does not match any expected format") + +def worker_to_df(data): + rows = [] + for worker, details in data['workers'].items(): + row = { + 'worker': worker, + 'hashrate': round(details['hashrate'] / 1e6, 2), #MH/s + 'shares_per_second': round(details['sharesPerSecond'], 2), + 'created': format_datetime(data['created']) + } + rows.append(row) + + # Create DataFrame + return pd.DataFrame(rows) class PriceReader: def __init__(self): @@ -61,8 +75,11 @@ def __init__(self, config_path: str): self.base_api = cfg.default_values.base_api self.stats_headers = cfg.default_values.stats_cols self.block_headers = cfg.default_values.block_cols + self.payment_headers = cfg.default_values.payment_headers + self.live_worker_headers = cfg.default_values.live_worker_headers + self.performance_headers = cfg.default_values.performance_headers self.miner_sample_df = DataFrame(columns=['created']) - self.btc_price, self.erg_price = self.price_reader.get(debug) + self.data = {'poolEffort': 0} self.db = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db') @@ -91,8 +108,15 @@ def get_api_data(self, api_url): def __create_table_(self, table self.db.create_table('stats', self.stats_headers) self.db.create_table('block', self.block_headers) + self.db.create_table('payment', self.payment_headers) + self.db.create_table('live_worker', self.live_worker_headers) + self.db.create_table('performance', self.performance_headers) return + def insert_df_rows(self, df, table): + for index, row in df.iterrows(): + self.db.insert_data(table, row.to_dict()) + def update_pool_stats(self, timenow): ''' The purpose of this method is to grab all the relevant stats of the pool and network @@ -147,6 +171,79 @@ def update_block_data(self, timenow): data['reward'] = round(data['reward'], 2) data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:]) self.db.update_or_insert('block', data) + + + def update_miner_data(self, timenow): + _, erg_price = self.price_reader.get() + miner_data = self.get_api_data('{}/{}'.format(self.base_api, 'miners?pageSize=5000')) + miner_ls = [sample['miner'] for sample in miner_data] + + # time_now = pd.Timestamp.now() + stats = self.db.fetch_data('data') + block_data = self.db.fetch_data('block') + networkHashrate = stats['networkhashrate'][0] # use logic to get the lastest not just the first index + networkDifficulty = stats['networkdifficulty'][0] + for miner in miner_ls: + url = '{}/{}/{}'.format(self.base_api, 'miners', miner) + mining_data = reader.get_api_data(url) + + payment_data = {k: v for k, v in mining_data.items() if k not in ['performance', 'performanceSamples']} + payment_data['Schema'] = 'PPLNS' + payment_data['Price'] = erg_price + + try: + payment_data['lastPayment'] = mining_data['lastPayment'][:-17] + payment_data['lastPaymentLink'] = mining_data['lastPaymentLink'] + + except KeyError: + payment_data['lastPayment'] = 'N/A' + payment_data['lastPaymentLink'] = 'Keep Mining!' + + except TypeError: + payment_data['lastPayment'] = 'N/A' + payment_data['lastPaymentLink'] = 'Keep Mining!' + + performance_samples = mining_data.pop('performanceSamples') + + payment_data['created_at'] = time_now + payment_data['miner'] = miner + miner_blocks = block_data[block_data.miner == miner] + + performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) + performance_df['miner'] = miner + + if miner_blocks.empty: + # still need to adjust to pull from performance table for this miner + latest = min(performance_df.created) + last_block_found = 'N/A' + + else: + latest = str(max(miner_blocks.time_found)) + last_block_found = latest + + try: + live_performance = mining_data.pop('performance') + live_df = worker_to_df(live_performance) + live_df['miner'] = miner + live_df['effort'] = [self.calculate_mining_effort(networkDifficulty, networkHashrate, + temp_hash, latest) for temp_hash in live_df.hashrate] + live_df['ttf'] = [self.calculate_time_to_find_block(networkDifficulty, networkHashrate, + temp_hash) for temp_hash in live_df.hashrate] + live_df['last_block_found'] = last_block_found + + self.insert_df_rows(live_df, 'live_worker') + print('live worker inserted') + + except KeyError: + live_df = pd.DataFrame() + print('no live data') + + self.db.insert_data('payment', payment_data) + print('payments inserted') + + self.insert_df_rows(performance_df, 'performance') + print('performance inserted') + diff --git a/utils/api_reader.py b/utils/api_reader.py index 6773207d..9a98619a 100644 --- a/utils/api_reader.py +++ b/utils/api_reader.py @@ -115,7 +115,7 @@ def update_data(self): self.data['poolHashrate'] * 1e3, self.latest_block) self.data['poolTTF'] = self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], - self.data['poolHashrate'] * 1e3, self.latest_block) + self.data['poolHashrate'] * 1e3) ### TOTAL HASH #### all_miner_samples = [self.get_miner_samples(miner) for miner in miner_ls] @@ -190,10 +190,10 @@ def get_latest_worker_samples(self, totals=False): temp_hash = round(temp.hashrate.sum(), 0) effort = self.calculate_mining_effort(self.data['networkDifficulty'], self.data['networkHashrate'], temp_hash, temp_latest) - ttf = self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], temp_hash, temp_latest) + ttf = self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], temp_hash) temp['Last Block Found'] = temp_latest temp['Effort'] = [self.calculate_mining_effort(self.data['networkDifficulty'], self.data['networkHashrate'], hash, temp_latest) for hash in temp.hashrate] - temp['TTF'] = [self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], hash, temp_latest) for hash in temp.hashrate] + temp['TTF'] = [self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], hash) for hash in temp.hashrate] work_ls.append(temp) total_ls.append([miner, temp_hash, round(temp.sharesPerSecond.sum(), 2), effort, ttf, temp_latest]) @@ -323,7 +323,7 @@ def calculate_mining_effort(self, network_difficulty, network_hashrate, hashrate return round(effort, 3) - def calculate_time_to_find_block(self, network_difficulty, network_hashrate, hashrate, last_block_timestamp): + def calculate_time_to_find_block(self, network_difficulty, network_hashrate, hashrate): """ Calculate the time to find a block on Ergo blockchain based on the given timestamp. @@ -337,17 +337,6 @@ def calculate_time_to_find_block(self, network_difficulty, network_hashrate, has network_difficulty = network_difficulty * 1e15 network_hashrate = network_hashrate * 1e12 hashrate = hashrate * 1e6 - - # Parse the last block timestamp - time_format = '%Y-%m-%d %H:%M:%S' - last_block_time = datetime.strptime(last_block_timestamp, time_format) - last_block_time = last_block_time.replace(tzinfo=pytz.utc) # Assume the timestamp is in UTC - - # Get the current time in UTC - now = datetime.now(pytz.utc) - - # Calculate the time difference in seconds - time_since_last_block = (now - last_block_time).total_seconds() # Hashes to find a block at current difficulty hashes_to_find_block = network_difficulty # This is a simplification diff --git a/utils/db_util.py b/utils/db_util.py index f9eaa702..62785d2c 100644 --- a/utils/db_util.py +++ b/utils/db_util.py @@ -72,7 +72,8 @@ def insert_data(self, table_name, data): print(f"Insertion failed: {e}") except Exception as e: - print(e) + print('EXCEPTION', e) + pass finally: cursor.close() @@ -129,13 +130,8 @@ def fetch_data(self, table_name, columns='*', where=None): query = f"SELECT {', '.join(columns) if isinstance(columns, list) else columns} FROM {table_name}" if where: query += f" WHERE {where}" - # - # return cursor.fetchall() # Fetch all rows of a query result - # try: return pd.read_sql_query(query, self.conn) - # except Exception: - # cursor.execute(query) - # return cursor.fetchall() + except psycopg2.OperationalError as e: print(f"Data fetch failed: {e}") finally: From aa3085a25c9aa1ef1f2f3ad48cb46bcf0f0acbfc Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Sun, 28 Apr 2024 00:22:09 -0600 Subject: [PATCH 04/16] front page integrated --- conf/conf.yaml | 4 +- layouts/front_page.py | 108 +- prototype.ipynb | 3793 ++++++----------------------------------- testing_2_db.ipynb | 198 +++ utils/api_2_db.py | 111 +- 5 files changed, 898 insertions(+), 3316 deletions(-) create mode 100644 testing_2_db.ipynb diff --git a/conf/conf.yaml b/conf/conf.yaml index 4c866353..771b996c 100644 --- a/conf/conf.yaml +++ b/conf/conf.yaml @@ -28,7 +28,7 @@ default_values: 'rewardType VARCHAR(50)', # String type for reward types 'poolEffort NUMERIC', # Numeric type for pool effort 'poolTTF NUMERIC', # Numeric type for pool time to find - 'db_timestamp TIMESTAMP'] # Timestamp for the exact time data was recorded + 'insert_time_stamp TIMESTAMP'] # Timestamp for the exact time data was recorded block_cols: ['poolId VARCHAR(255)', 'blockHeight INTEGER', @@ -42,7 +42,7 @@ default_values: 'hash VARCHAR(255)', 'miner VARCHAR(255)', 'source VARCHAR(255)', - 'created VARCHAR(255)'] + 'time_found VARCHAR(255)'] payment_headers: ['pendingShares NUMERIC', 'pendingBalance NUMERIC', diff --git a/layouts/front_page.py b/layouts/front_page.py index 5a1370f2..7743fd58 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -7,7 +7,13 @@ import plotly.graph_objs as go import plotly.express as px -from dash import html +# from dash import HTML + +from utils.api_2_db import DataSyncer + +db_sync = DataSyncer(config_path="../conf") + + price_reader = PriceReader() # sigma_reader = SigmaWalletReader(config_path="../conf") @@ -78,20 +84,19 @@ def create_row_card(image, h2_text, p_text): html.P(p_text)]), style={'marginRight': 'auto', 'marginLeft': 'auto'}, width=4,) def setup_front_page_callbacks(app, reader): - reader.update_data() + # reader.update_data() @app.callback([Output('metric-1', 'children')], [Input('fp-int-4', 'n_intervals')]) def update_first_row(n): - reader.update_data() - data = reader.data - # data = reader.get_front_page_data() # - # _, ergo = price_reader.get(debug=debug) - ergo = reader.erg_price - # payout_schema = 'Schema: {}'.format(data['payoutScheme']) - n_miners = '{}'.format(data['connectedMiners']) - hashrate = '{} GH/s'.format(round(data['poolHashrate'], 3)) + data = db_sync.db.fetch_data('stats') + payment = db_sync.db.fetch_data('payment') + # reader.update_data() + # data = reader.data + ergo = payment['price'][0] # need to pull latest or move to data + n_miners = '{}'.format(data['connectedpeers'][0]) + hashrate = '{} GH/s'.format(data['poolhashrate'][0]) row_1 = dbc.Row(justify='center', align='stretch', children=[create_row_card('assets/boltz.png', hashrate, 'Pool Hashrate'), @@ -106,30 +111,31 @@ def update_first_row(n): def update_metrics(n): # reader.update_data() - data = reader.data + # data = reader.data + data = db_sync.db.fetch_data('stats') # need to pull latest sample and grab values md = 4 row_2 = dbc.Row(children=[ dbc.Col(md=md, style={'padding': '10px'}, children=[ dbc.Card(style=bottom_row_style, children=[ - create_image_text_block('min-payout.png', 'Minimum Payout:', data['minimumPayment']), - create_image_text_block('percentage.png', 'Pool Fee:', '{}%'.format(data['fee'])), - create_image_text_block('ergo.png', 'Total Paid:', '{} ERG'.format(round(data['paid'], 3))), + create_image_text_block('min-payout.png', 'Minimum Payout:', data['minimumpayment'][0]), + create_image_text_block('percentage.png', 'Pool Fee:', '{}%'.format(data['fee'][0])), + create_image_text_block('ergo.png', 'Total Paid:', '{} ERG'.format(round(data['paid'][0], 3))), ]) ]), dbc.Col(md=md, style={'padding': '10px'}, children=[ dbc.Card(style=bottom_row_style, children=[ - create_image_text_block('bolt.png', 'Network Hashrate:', '{} TH/s'.format(round(data['networkHashrate'], 3))), - create_image_text_block('gauge.png', 'Network Difficulty:', '{}P'.format(round(data['networkDifficulty'], 3))), - create_image_text_block('height.png', 'Block Height:', data['blockHeight']), + create_image_text_block('bolt.png', 'Network Hashrate:', '{} TH/s'.format(round(data['networkhashrate'][0], 2))), + create_image_text_block('gauge.png', 'Network Difficulty:', '{}P'.format(round(data['networkdifficulty'][0], 2))), + create_image_text_block('height.png', 'Block Height:', data['blockheight'][0]), ]) ]), dbc.Col(md=md, style={'padding': '10px'}, children=[ dbc.Card(style=bottom_row_style, children=[ - create_image_text_block('triangle.png', 'Schema:', data['payoutScheme']), - create_image_text_block('ergo.png', 'Blocks Found:', data['blocks']), - create_image_text_block('ergo.png', 'Current Block Effort:', round(data['poolEffort'], 3)), + create_image_text_block('triangle.png', 'Schema:', data['payoutscheme'][0]), + create_image_text_block('ergo.png', 'Blocks Found:', data['blocks'][0]), + create_image_text_block('ergo.png', 'Current Block Effort:', round(data['pooleffort'][0], 3)), ]) ])]) return [row_2] @@ -140,24 +146,27 @@ def update_metrics(n): def update_plots(n, value): if value == 'effort': - block_df = reader.block_df + block_df = db_sync.db.fetch_data('block') + block_df = block_df.sort_values(['time_found']) + block_df['rolling_effort'] = block_df['effort'].expanding().mean() + block_df['effort'] = block_df['effort'] * 100 + # block_df = reader.block_df title = 'EFFORT AND DIFFICULTY' - block_df = block_df.sort_values('Time Found') - block_df['effort'] = block_df['effort'] * 100 - # block_df['Rolling Effort'] = block_df['effort'].expanding().mean() - response_df = block_df.melt(id_vars = ['Time Found'], value_vars=['Rolling Effort', 'effort', 'networkDifficulty']) + block_df = block_df.sort_values('time_found') + + response_df = block_df.melt(id_vars = ['time_found'], value_vars=['rolling_effort', 'effort', 'networkdifficulty']) - effort_response_chart = px.line(response_df[response_df['variable'] != 'networkDifficulty'], - x='Time Found', + effort_response_chart = px.line(response_df[response_df['variable'] != 'networkdifficulty'], + x='time_found', y='value', color='variable', markers=True) # Add 'networkDifficulty' on a secondary y-axis - effort_response_chart.add_trace(go.Scatter(x=response_df['Time Found'][response_df['variable'] == 'networkDifficulty'], - y=response_df['value'][response_df['variable'] == 'networkDifficulty'], - name='networkDifficulty', + effort_response_chart.add_trace(go.Scatter(x=response_df['time_found'][response_df['variable'] == 'networkdifficulty'], + y=response_df['value'][response_df['variable'] == 'networkdifficulty'], + name='networkdifficulty', yaxis='y2', marker=dict(color='rgba(255,0,0,0.5)'), # Adjust color accordingly mode='lines+markers')) @@ -177,11 +186,18 @@ def update_plots(n, value): return effort_response_chart, title title = 'HASHRATE OVER TIME' - total_hashrate_df = reader.get_total_hash_data() - total_hashrate_df = total_hashrate_df.sort_values(['Date']) - total_hashrate_df['Hashrate'] = total_hashrate_df['Hashrate'] + + performance_df = db_sync.db.fetch_data('performance') - total_hashrate_plot={'data': [go.Scatter(x=total_hashrate_df['Date'], y=total_hashrate_df['Hashrate'], + total_hashrate_df = performance_df.groupby('created').agg({ + 'hashrate': 'sum', # Sum of hashrate + 'shares_per_second': 'sum', # Sum of shares_per_second + 'worker': 'nunique', # Count of unique workers + 'miner': 'nunique' # Count of unique miners + }).reset_index() + total_hashrate_df = total_hashrate_df.sort_values(['created']) + + total_hashrate_plot={'data': [go.Scatter(x=total_hashrate_df['created'], y=total_hashrate_df['hashrate'], mode='lines+markers', name='Hashrate Over Time', line={'color': small_text_color})], 'layout': go.Layout(xaxis = {'showgrid': False, 'title': 'Snap Shot Time'},yaxis = {'showgrid': True, 'title': 'GH/s'}, @@ -200,18 +216,32 @@ def update_plots(n, value): Input('dataset-dropdown', 'value')]) def update_content(n, selected_data): - block_df= reader.block_df + # block_df= reader.block_df + if selected_data == 'blocks': - block_df['Confirmation'] = round(block_df['confirmationProgress'], 2) + block_df = db_sync.db.fetch_data('block') + block_df = block_df.sort_values(['time_found']) + block_df['rolling_effort'] = block_df['effort'].expanding().mean() + block_df['effort'] = block_df['effort'] * 100 + # block_df['Confirmation'] = round(block_df['confirmationProgress'], 2) - block_df = block_df.filter(['Time Found', 'blockHeight', 'miner', 'effort [%]', 'reward [erg]', 'Confirmation [%]']) + # block_df = block_df.filter(['Time Found', 'blockHeight', 'miner', 'effort [%]', 'reward [erg]', 'Confirmation [%]']) df = block_df df['miner'] = df['miner'].apply(lambda x: f"{x[:5]}...{x[-5:]}" if len(x) > 10 else x) title = 'Blocks Data' elif selected_data == 'miners': - df = reader.get_latest_worker_samples(totals=True) - df = df.rename(columns={"Effort": "Current Effort [%]", "Hashrate": "MH/s", 'TTF': 'TTF [Days]'}) + df = db_sync.db.fetch_data('live_worker') + df = df.groupby('miner').agg({ + 'hashrate': 'sum', # Sum of hashrate + 'shares_per_second': 'sum', # Sum of shares_per_second + 'worker': 'nunique', # Count of unique workers + # 'miner': 'miner' # Count of unique miners + }) + # need to add TTF EFFORT etc + + # df = reader.get_latest_worker_samples(totals=True) + # df = df.rename(columns={"Effort": "Current Effort [%]", "Hashrate": "MH/s", 'TTF': 'TTF [Days]'}) title = 'Current Top Miners' else: diff --git a/prototype.ipynb b/prototype.ipynb index bbffeb6e..e89ec498 100644 --- a/prototype.ipynb +++ b/prototype.ipynb @@ -50,7 +50,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -106,8 +106,8 @@ "{'poolId': 'ErgoSigmanauts',\n", " 'blockHeight': 1252559,\n", " 'networkDifficulty': 422881.6589500178,\n", - " 'status': 'pending',\n", - " 'confirmationProgress': 0.4722222222222222,\n", + " 'status': 'confirmed',\n", + " 'confirmationProgress': 1,\n", " 'effort': 0.017699607118926087,\n", " 'transactionConfirmationData': '56dcc160776a8a71',\n", " 'reward': 27.0221,\n", @@ -175,8 +175,8 @@ " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", - " pending\n", - " 0.472222\n", + " confirmed\n", + " 1\n", " 0.017700\n", " 56dcc160776a8a71\n", " 27.0221\n", @@ -191,8 +191,8 @@ " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", - " pending\n", - " 0.555556\n", + " confirmed\n", + " 1\n", " 1.856882\n", " 50230ed620a8fa0b\n", " 27.0000\n", @@ -208,7 +208,7 @@ " 1251978\n", " 380358.285885\n", " confirmed\n", - " 1.000000\n", + " 1\n", " 0.112525\n", " 50a3000448228642\n", " 27.0010\n", @@ -224,7 +224,7 @@ " 1251939\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1\n", " 0.244779\n", " 502468dac3622052\n", " 27.0182\n", @@ -240,7 +240,7 @@ " 1251871\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1\n", " 1.039931\n", " 50d8fd9c81187de2\n", " 27.0088\n", @@ -256,18 +256,18 @@ ], "text/plain": [ " poolId blockHeight networkDifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 pending \n", - "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", "\n", " confirmationProgress effort transactionConfirmationData reward \\\n", - "0 0.472222 0.017700 56dcc160776a8a71 27.0221 \n", - "1 0.555556 1.856882 50230ed620a8fa0b 27.0000 \n", - "2 1.000000 0.112525 50a3000448228642 27.0010 \n", - "3 1.000000 0.244779 502468dac3622052 27.0182 \n", - "4 1.000000 1.039931 50d8fd9c81187de2 27.0088 \n", + "0 1 0.017700 56dcc160776a8a71 27.0221 \n", + "1 1 1.856882 50230ed620a8fa0b 27.0000 \n", + "2 1 0.112525 50a3000448228642 27.0010 \n", + "3 1 0.244779 502468dac3622052 27.0182 \n", + "4 1 1.039931 50d8fd9c81187de2 27.0088 \n", "\n", " infoLink \\\n", "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", @@ -394,24 +394,24 @@ "data": { "text/plain": [ "{'fee': 0.9,\n", - " 'paid': 1451.190902122231,\n", + " 'paid': 1505.063062438491,\n", " 'blocks': 55,\n", " 'last_block_found': 'Sunday, April 28, 2024 at 03:06:52 AM',\n", " 'enabled': True,\n", " 'minimumPayment': 0.5,\n", " 'payoutScheme': 'PPLNS',\n", - " 'connectedMiners': 36,\n", - " 'poolHashrate': 54.27,\n", + " 'connectedMiners': 35,\n", + " 'poolHashrate': 51.63,\n", " 'sharesPerSecond': 4,\n", " 'networkType': 'mainnet',\n", - " 'networkHashrate': 15.135751082257066,\n", - " 'networkDifficulty': 1.816290129870848,\n", - " 'lastNetworkBlockTime': '2024-04-28T04:19:33.7752039Z',\n", - " 'blockHeight': 1252595,\n", - " 'connectedPeers': 119,\n", + " 'networkHashrate': 14.187601260270933,\n", + " 'networkDifficulty': 1.702512151232512,\n", + " 'lastNetworkBlockTime': '2024-04-28T05:38:10.6154276Z',\n", + " 'blockHeight': 1252635,\n", + " 'connectedPeers': 114,\n", " 'rewardType': 'POW',\n", - " 'poolEffort': 13.429,\n", - " 'poolTTF': 0.387}" + " 'poolEffort': 28.434,\n", + " 'poolTTF': 0.382}" ] }, "execution_count": 11, @@ -426,6 +426,14 @@ "data" ] }, + { + "cell_type": "code", + "execution_count": null, + "id": "09a93c62-aee4-491d-9275-874a47982676", + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": 12, @@ -446,14 +454,128 @@ "database.delete_table('block')\n", "\n", "database.create_table('data', data_cols)\n", - "database.create_table('block', block_cols)\n", - "\n", - "database.insert_data('data', data)" + "database.create_table('block', block_cols)\n" ] }, { "cell_type": "code", "execution_count": 13, + "id": "42021f22-82c1-4de4-9acc-48dedc466bb3", + "metadata": {}, + "outputs": [], + "source": [ + "database.insert_data('data', data)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "de4677b4-aacc-4c81-bf39-d07c441c3ced", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
feepaidblockslast_block_foundenabledminimumpaymentpayoutschemeconnectedminerspoolhashratesharespersecondnetworktypenetworkhashratenetworkdifficultylastnetworkblocktimeblockheightconnectedpeersrewardtypepooleffortpoolttf
00.91505.063062552024-04-28 03:06:52True0.5PPLNS3551.634.0mainnet14.1876011.7025122024-04-28 05:38:10.6154281252635114POW28.4340.382
\n", + "
" + ], + "text/plain": [ + " fee paid blocks last_block_found enabled minimumpayment \\\n", + "0 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "\n", + " payoutscheme connectedminers poolhashrate sharespersecond networktype \\\n", + "0 PPLNS 35 51.63 4.0 mainnet \n", + "\n", + " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", + "0 14.187601 1.702512 2024-04-28 05:38:10.615428 1252635 \n", + "\n", + " connectedpeers rewardtype pooleffort poolttf \n", + "0 114 POW 28.434 0.382 " + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "database.fetch_data('data')" + ] + }, + { + "cell_type": "code", + "execution_count": 15, "id": "87504df7-41a7-4239-bf81-cacbf9525ac0", "metadata": { "scrolled": true @@ -466,7 +588,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 16, "id": "bf955300-ebca-4f0f-aa1b-59b1f4753e3f", "metadata": { "scrolled": true @@ -522,8 +644,8 @@ " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", - " pending\n", - " 0.472222\n", + " confirmed\n", + " 1.0\n", " 0.017700\n", " 56dcc160776a8a71\n", " 27.022100\n", @@ -538,8 +660,8 @@ " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", - " pending\n", - " 0.555556\n", + " confirmed\n", + " 1.0\n", " 1.856882\n", " 50230ed620a8fa0b\n", " 27.000000\n", @@ -555,7 +677,7 @@ " 1251978\n", " 380358.285885\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.112525\n", " 50a3000448228642\n", " 27.001000\n", @@ -571,7 +693,7 @@ " 1251939\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.244779\n", " 502468dac3622052\n", " 27.018200\n", @@ -587,7 +709,7 @@ " 1251871\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.039931\n", " 50d8fd9c81187de2\n", " 27.008800\n", @@ -603,7 +725,7 @@ " 1251567\n", " 388383.156547\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.261117\n", " 555f000b343364e4\n", " 27.005100\n", @@ -619,7 +741,7 @@ " 1251499\n", " 388383.156547\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 6.396079\n", " 507971cae2ee4a18\n", " 27.004200\n", @@ -635,7 +757,7 @@ " 1249527\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.341527\n", " 50164a42c64cc4f1\n", " 27.015100\n", @@ -651,7 +773,7 @@ " 1249440\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.019216\n", " 50187b62b18da535\n", " 27.010000\n", @@ -667,7 +789,7 @@ " 1249432\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.639227\n", " 5057d49b44b4ed21\n", " 27.012200\n", @@ -683,7 +805,7 @@ " 1249230\n", " 361687.597350\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.262430\n", " 1bdb3e4628f615be\n", " 27.006300\n", @@ -699,7 +821,7 @@ " 1248838\n", " 426627.604763\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.351294\n", " 186e549eb8340f12\n", " 27.034400\n", @@ -715,7 +837,7 @@ " 1248716\n", " 402639.913195\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.685916\n", " 1c96000783680ce2\n", " 27.008244\n", @@ -731,7 +853,7 @@ " 1248443\n", " 380709.272335\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.001987\n", " 188b8a2690b77569\n", " 27.007400\n", @@ -747,7 +869,7 @@ " 1248031\n", " 396231.066521\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.161205\n", " 1c1800034e77b166\n", " 27.001960\n", @@ -763,7 +885,7 @@ " 1247949\n", " 334193.979483\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.094927\n", " 1bf4a728749d7de8\n", " 27.001000\n", @@ -779,7 +901,7 @@ " 1247906\n", " 334193.979483\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.690287\n", " 1a16000df5456083\n", " 27.026500\n", @@ -795,7 +917,7 @@ " 1247634\n", " 390680.078087\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 3.039863\n", " 1a1329402f2206ed\n", " 27.069355\n", @@ -811,7 +933,7 @@ " 1246555\n", " 371421.349703\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.535275\n", " 12fc6a2219199f2a\n", " 27.012000\n", @@ -827,7 +949,7 @@ " 1246329\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.033313\n", " 1642835a069e4fb9\n", " 27.025700\n", @@ -843,7 +965,7 @@ " 1246316\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.072236\n", " 146857274f45ac2c\n", " 27.180640\n", @@ -859,7 +981,7 @@ " 1246282\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.084016\n", " 164237aca8296f1c\n", " 27.012601\n", @@ -875,7 +997,7 @@ " 1245573\n", " 345942.822277\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.116772\n", " 12a8cc865d1eb6b1\n", " 27.001253\n", @@ -891,7 +1013,7 @@ " 1245528\n", " 323130.127436\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.361345\n", " 126a0007f2a34c7c\n", " 27.000000\n", @@ -907,7 +1029,7 @@ " 1245375\n", " 343213.854779\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.384602\n", " 126b001c1226e666\n", " 27.004100\n", @@ -923,7 +1045,7 @@ " 1245219\n", " 385248.184230\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.361363\n", " 123200132a4f0053\n", " 27.001000\n", @@ -939,7 +1061,7 @@ " 1244611\n", " 350337.673747\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.304060\n", " 13309b8b1531ac3d\n", " 27.004400\n", @@ -955,7 +1077,7 @@ " 1244487\n", " 347763.784750\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.109182\n", " 126b0037bf192dd9\n", " 27.004000\n", @@ -971,7 +1093,7 @@ " 1243556\n", " 346496.758155\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.384074\n", " 121c61dad76dde64\n", " 27.002200\n", @@ -987,7 +1109,7 @@ " 1243309\n", " 317174.205629\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.470362\n", " 1232000391a2d9da\n", " 27.009000\n", @@ -1003,7 +1125,7 @@ " 1243018\n", " 353518.612001\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.517238\n", " 124d61659aa64c7a\n", " 27.076500\n", @@ -1019,7 +1141,7 @@ " 1242682\n", " 379295.328612\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.394561\n", " 12200009ea038849\n", " 27.017500\n", @@ -1035,7 +1157,7 @@ " 1241796\n", " 370202.405388\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.980514\n", " 10c71b4fad01f31c\n", " 27.052025\n", @@ -1051,7 +1173,7 @@ " 1240237\n", " 406987.879722\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.156104\n", " 100fe6c78281bfae\n", " 27.130969\n", @@ -1067,7 +1189,7 @@ " 1240101\n", " 411836.853619\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.177793\n", " 10da0014d0866a1a\n", " 27.006200\n", @@ -1083,7 +1205,7 @@ " 1239922\n", " 414752.684611\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.379170\n", " 10111463352887a3\n", " 27.001100\n", @@ -1099,7 +1221,7 @@ " 1239612\n", " 395105.076364\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.270331\n", " 10c7e206ff3da33e\n", " 27.029100\n", @@ -1115,7 +1237,7 @@ " 1238592\n", " 386279.122336\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.608459\n", " 10c72dc2ea84ee3e\n", " 27.002000\n", @@ -1131,7 +1253,7 @@ " 1238040\n", " 399941.963788\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.240973\n", " 101010806c3bfec2\n", " 30.005000\n", @@ -1147,7 +1269,7 @@ " 1236735\n", " 385434.149366\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.675790\n", " 100d40c8c30375f9\n", " 30.025167\n", @@ -1163,7 +1285,7 @@ " 1235990\n", " 387916.169692\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.525286\n", " 20058216259db392\n", " 30.010000\n", @@ -1179,7 +1301,7 @@ " 1235365\n", " 466883.931372\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.169038\n", " d0db3663848642f5\n", " 30.068900\n", @@ -1195,7 +1317,7 @@ " 1235136\n", " 433886.497034\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.348562\n", " d4481db8a1682303\n", " 30.007660\n", @@ -1211,7 +1333,7 @@ " 1234733\n", " 425282.536901\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.926869\n", " d43cfb8db6bde057\n", " 30.008316\n", @@ -1227,7 +1349,7 @@ " 1232662\n", " 385380.245572\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.025904\n", " d88e000ab46f7e8a\n", " 30.000000\n", @@ -1243,7 +1365,7 @@ " 1232628\n", " 363957.496239\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.237322\n", " d10ffd6af9eca406\n", " 30.000000\n", @@ -1259,7 +1381,7 @@ " 1232487\n", " 360630.583506\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.012745\n", " dee5be1bf40de25e\n", " 30.013800\n", @@ -1275,7 +1397,7 @@ " 1231651\n", " 367785.409859\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.466819\n", " daa5cc820eedd3d9\n", " 30.001500\n", @@ -1291,7 +1413,7 @@ " 1231144\n", " 405099.842403\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.329434\n", " d88f00142c1483c1\n", " 30.002000\n", @@ -1307,7 +1429,7 @@ " 1230782\n", " 360986.500966\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.030553\n", " d00cd5ba5f2b167c\n", " 30.088260\n", @@ -1323,7 +1445,7 @@ " 1230749\n", " 360986.500966\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.287231\n", " d8a48cee009b608c\n", " 30.006550\n", @@ -1339,7 +1461,7 @@ " 1230547\n", " 434381.378191\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.797385\n", " d6c1191549ab2f07\n", " 30.027600\n", @@ -1355,7 +1477,7 @@ " 1230104\n", " 347635.796935\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 4.752955\n", " d153e8105c7c0b57\n", " 30.001000\n", @@ -1371,7 +1493,7 @@ " 1223980\n", " 416310.690227\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.895507\n", " 300b000932aead3a\n", " 30.007862\n", @@ -1387,7 +1509,7 @@ " 1221911\n", " 421209.622611\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.867494\n", " 705c89a6a4e552cf\n", " 30.007100\n", @@ -1403,8 +1525,8 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 pending \n", - "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", @@ -1460,61 +1582,61 @@ "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", - "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.000000 0.112525 50a3000448228642 27.001000 \n", - "3 1.000000 0.244779 502468dac3622052 27.018200 \n", - "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", - "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", - "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", - "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", - "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", - "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.000000 1.394561 12200009ea038849 27.017500 \n", - "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.000000 0.379170 10111463352887a3 27.001100 \n", - "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.000000 0.525286 20058216259db392 30.010000 \n", - "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", - "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "0 1.0 0.017700 56dcc160776a8a71 27.022100 \n", + "1 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.0 0.112525 50a3000448228642 27.001000 \n", + "3 1.0 0.244779 502468dac3622052 27.018200 \n", + "4 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.0 0.261117 555f000b343364e4 27.005100 \n", + "6 1.0 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.0 0.019216 50187b62b18da535 27.010000 \n", + "9 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.0 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.0 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.0 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.0 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.0 0.690287 1a16000df5456083 27.026500 \n", + "17 1.0 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.0 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.0 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.0 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.0 0.384602 126b001c1226e666 27.004100 \n", + "25 1.0 1.361363 123200132a4f0053 27.001000 \n", + "26 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.0 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.0 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.0 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.0 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.0 1.394561 12200009ea038849 27.017500 \n", + "32 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.0 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.0 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.0 0.379170 10111463352887a3 27.001100 \n", + "36 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.0 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.0 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.0 0.525286 20058216259db392 30.010000 \n", + "41 1.0 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.0 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.0 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.0 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.0 0.895507 300b000932aead3a 30.007862 \n", + "54 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", "\n", " infolink \\\n", "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", @@ -1745,7 +1867,7 @@ "54 2024-03-16 06:45:27 " ] }, - "execution_count": 14, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" } @@ -1758,7 +1880,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 17, "id": "7b17a189-4564-4261-9899-38b2705a0787", "metadata": {}, "outputs": [], @@ -1785,7 +1907,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 18, "id": "947f6417-0033-4e42-86e6-6b8a3eba9eb0", "metadata": { "scrolled": true @@ -1841,8 +1963,8 @@ " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", - " pending\n", - " 0.472222\n", + " confirmed\n", + " 1.0\n", " 0.017700\n", " 56dcc160776a8a71\n", " 27.022100\n", @@ -1857,8 +1979,8 @@ " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", - " pending\n", - " 0.555556\n", + " confirmed\n", + " 1.0\n", " 1.856882\n", " 50230ed620a8fa0b\n", " 27.000000\n", @@ -1874,7 +1996,7 @@ " 1251978\n", " 380358.285885\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.112525\n", " 50a3000448228642\n", " 27.001000\n", @@ -1890,7 +2012,7 @@ " 1251939\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.244779\n", " 502468dac3622052\n", " 27.018200\n", @@ -1906,7 +2028,7 @@ " 1251871\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.039931\n", " 50d8fd9c81187de2\n", " 27.008800\n", @@ -1922,7 +2044,7 @@ " 1251567\n", " 388383.156547\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.261117\n", " 555f000b343364e4\n", " 27.005100\n", @@ -1938,7 +2060,7 @@ " 1251499\n", " 388383.156547\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 6.396079\n", " 507971cae2ee4a18\n", " 27.004200\n", @@ -1954,7 +2076,7 @@ " 1249527\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.341527\n", " 50164a42c64cc4f1\n", " 27.015100\n", @@ -1970,7 +2092,7 @@ " 1249440\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.019216\n", " 50187b62b18da535\n", " 27.010000\n", @@ -1986,7 +2108,7 @@ " 1249432\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.639227\n", " 5057d49b44b4ed21\n", " 27.012200\n", @@ -2002,7 +2124,7 @@ " 1249230\n", " 361687.597350\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.262430\n", " 1bdb3e4628f615be\n", " 27.006300\n", @@ -2018,7 +2140,7 @@ " 1248838\n", " 426627.604763\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.351294\n", " 186e549eb8340f12\n", " 27.034400\n", @@ -2034,7 +2156,7 @@ " 1248716\n", " 402639.913195\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.685916\n", " 1c96000783680ce2\n", " 27.008244\n", @@ -2050,7 +2172,7 @@ " 1248443\n", " 380709.272335\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.001987\n", " 188b8a2690b77569\n", " 27.007400\n", @@ -2066,7 +2188,7 @@ " 1248031\n", " 396231.066521\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.161205\n", " 1c1800034e77b166\n", " 27.001960\n", @@ -2082,7 +2204,7 @@ " 1247949\n", " 334193.979483\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.094927\n", " 1bf4a728749d7de8\n", " 27.001000\n", @@ -2098,7 +2220,7 @@ " 1247906\n", " 334193.979483\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.690287\n", " 1a16000df5456083\n", " 27.026500\n", @@ -2114,7 +2236,7 @@ " 1247634\n", " 390680.078087\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 3.039863\n", " 1a1329402f2206ed\n", " 27.069355\n", @@ -2130,7 +2252,7 @@ " 1246555\n", " 371421.349703\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.535275\n", " 12fc6a2219199f2a\n", " 27.012000\n", @@ -2146,7 +2268,7 @@ " 1246329\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.033313\n", " 1642835a069e4fb9\n", " 27.025700\n", @@ -2162,7 +2284,7 @@ " 1246316\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.072236\n", " 146857274f45ac2c\n", " 27.180640\n", @@ -2178,7 +2300,7 @@ " 1246282\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.084016\n", " 164237aca8296f1c\n", " 27.012601\n", @@ -2194,7 +2316,7 @@ " 1245573\n", " 345942.822277\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.116772\n", " 12a8cc865d1eb6b1\n", " 27.001253\n", @@ -2210,7 +2332,7 @@ " 1245528\n", " 323130.127436\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.361345\n", " 126a0007f2a34c7c\n", " 27.000000\n", @@ -2226,7 +2348,7 @@ " 1245375\n", " 343213.854779\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.384602\n", " 126b001c1226e666\n", " 27.004100\n", @@ -2242,7 +2364,7 @@ " 1245219\n", " 385248.184230\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.361363\n", " 123200132a4f0053\n", " 27.001000\n", @@ -2258,7 +2380,7 @@ " 1244611\n", " 350337.673747\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.304060\n", " 13309b8b1531ac3d\n", " 27.004400\n", @@ -2274,7 +2396,7 @@ " 1244487\n", " 347763.784750\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.109182\n", " 126b0037bf192dd9\n", " 27.004000\n", @@ -2290,7 +2412,7 @@ " 1243556\n", " 346496.758155\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.384074\n", " 121c61dad76dde64\n", " 27.002200\n", @@ -2306,7 +2428,7 @@ " 1243309\n", " 317174.205629\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.470362\n", " 1232000391a2d9da\n", " 27.009000\n", @@ -2322,7 +2444,7 @@ " 1243018\n", " 353518.612001\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.517238\n", " 124d61659aa64c7a\n", " 27.076500\n", @@ -2338,7 +2460,7 @@ " 1242682\n", " 379295.328612\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.394561\n", " 12200009ea038849\n", " 27.017500\n", @@ -2354,7 +2476,7 @@ " 1241796\n", " 370202.405388\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.980514\n", " 10c71b4fad01f31c\n", " 27.052025\n", @@ -2370,7 +2492,7 @@ " 1240237\n", " 406987.879722\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.156104\n", " 100fe6c78281bfae\n", " 27.130969\n", @@ -2386,7 +2508,7 @@ " 1240101\n", " 411836.853619\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.177793\n", " 10da0014d0866a1a\n", " 27.006200\n", @@ -2402,7 +2524,7 @@ " 1239922\n", " 414752.684611\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.379170\n", " 10111463352887a3\n", " 27.001100\n", @@ -2418,7 +2540,7 @@ " 1239612\n", " 395105.076364\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.270331\n", " 10c7e206ff3da33e\n", " 27.029100\n", @@ -2434,7 +2556,7 @@ " 1238592\n", " 386279.122336\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.608459\n", " 10c72dc2ea84ee3e\n", " 27.002000\n", @@ -2450,7 +2572,7 @@ " 1238040\n", " 399941.963788\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.240973\n", " 101010806c3bfec2\n", " 30.005000\n", @@ -2466,7 +2588,7 @@ " 1236735\n", " 385434.149366\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.675790\n", " 100d40c8c30375f9\n", " 30.025167\n", @@ -2482,7 +2604,7 @@ " 1235990\n", " 387916.169692\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.525286\n", " 20058216259db392\n", " 30.010000\n", @@ -2498,7 +2620,7 @@ " 1235365\n", " 466883.931372\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.169038\n", " d0db3663848642f5\n", " 30.068900\n", @@ -2514,7 +2636,7 @@ " 1235136\n", " 433886.497034\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.348562\n", " d4481db8a1682303\n", " 30.007660\n", @@ -2530,7 +2652,7 @@ " 1234733\n", " 425282.536901\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.926869\n", " d43cfb8db6bde057\n", " 30.008316\n", @@ -2546,7 +2668,7 @@ " 1232662\n", " 385380.245572\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.025904\n", " d88e000ab46f7e8a\n", " 30.000000\n", @@ -2562,7 +2684,7 @@ " 1232628\n", " 363957.496239\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.237322\n", " d10ffd6af9eca406\n", " 30.000000\n", @@ -2578,7 +2700,7 @@ " 1232487\n", " 360630.583506\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.012745\n", " dee5be1bf40de25e\n", " 30.013800\n", @@ -2594,7 +2716,7 @@ " 1231651\n", " 367785.409859\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.466819\n", " daa5cc820eedd3d9\n", " 30.001500\n", @@ -2610,7 +2732,7 @@ " 1231144\n", " 405099.842403\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.329434\n", " d88f00142c1483c1\n", " 30.002000\n", @@ -2626,7 +2748,7 @@ " 1230782\n", " 360986.500966\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.030553\n", " d00cd5ba5f2b167c\n", " 30.088260\n", @@ -2642,7 +2764,7 @@ " 1230749\n", " 360986.500966\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.287231\n", " d8a48cee009b608c\n", " 30.006550\n", @@ -2658,7 +2780,7 @@ " 1230547\n", " 434381.378191\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.797385\n", " d6c1191549ab2f07\n", " 30.027600\n", @@ -2674,7 +2796,7 @@ " 1230104\n", " 347635.796935\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 4.752955\n", " d153e8105c7c0b57\n", " 30.001000\n", @@ -2690,7 +2812,7 @@ " 1223980\n", " 416310.690227\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.895507\n", " 300b000932aead3a\n", " 30.007862\n", @@ -2706,7 +2828,7 @@ " 1221911\n", " 421209.622611\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.867494\n", " 705c89a6a4e552cf\n", " 30.007100\n", @@ -2722,8 +2844,8 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 pending \n", - "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", @@ -2779,61 +2901,61 @@ "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", - "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.000000 0.112525 50a3000448228642 27.001000 \n", - "3 1.000000 0.244779 502468dac3622052 27.018200 \n", - "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", - "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", - "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", - "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", - "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", - "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.000000 1.394561 12200009ea038849 27.017500 \n", - "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.000000 0.379170 10111463352887a3 27.001100 \n", - "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.000000 0.525286 20058216259db392 30.010000 \n", - "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", - "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "0 1.0 0.017700 56dcc160776a8a71 27.022100 \n", + "1 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.0 0.112525 50a3000448228642 27.001000 \n", + "3 1.0 0.244779 502468dac3622052 27.018200 \n", + "4 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.0 0.261117 555f000b343364e4 27.005100 \n", + "6 1.0 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.0 0.019216 50187b62b18da535 27.010000 \n", + "9 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.0 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.0 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.0 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.0 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.0 0.690287 1a16000df5456083 27.026500 \n", + "17 1.0 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.0 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.0 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.0 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.0 0.384602 126b001c1226e666 27.004100 \n", + "25 1.0 1.361363 123200132a4f0053 27.001000 \n", + "26 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.0 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.0 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.0 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.0 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.0 1.394561 12200009ea038849 27.017500 \n", + "32 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.0 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.0 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.0 0.379170 10111463352887a3 27.001100 \n", + "36 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.0 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.0 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.0 0.525286 20058216259db392 30.010000 \n", + "41 1.0 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.0 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.0 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.0 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.0 0.895507 300b000932aead3a 30.007862 \n", + "54 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", "\n", " infolink \\\n", "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", @@ -3064,7 +3186,7 @@ "54 2024-03-16 06:45:27 " ] }, - "execution_count": 16, + "execution_count": 18, "metadata": {}, "output_type": "execute_result" } @@ -3086,7 +3208,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 19, "id": "64e890c1-c59e-4ac8-9bc2-98664033a5a1", "metadata": { "scrolled": true @@ -3142,8 +3264,8 @@ " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", - " pending\n", - " 0.472222\n", + " confirmed\n", + " 1.0\n", " 0.017700\n", " 56dcc160776a8a71\n", " 27.022100\n", @@ -3158,8 +3280,8 @@ " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", - " pending\n", - " 0.555556\n", + " confirmed\n", + " 1.0\n", " 1.856882\n", " 50230ed620a8fa0b\n", " 27.000000\n", @@ -3175,7 +3297,7 @@ " 1251978\n", " 380358.285885\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.112525\n", " 50a3000448228642\n", " 27.001000\n", @@ -3191,7 +3313,7 @@ " 1251939\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.244779\n", " 502468dac3622052\n", " 27.018200\n", @@ -3207,7 +3329,7 @@ " 1251871\n", " 366775.443497\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.039931\n", " 50d8fd9c81187de2\n", " 27.008800\n", @@ -3223,7 +3345,7 @@ " 1251567\n", " 388383.156547\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.261117\n", " 555f000b343364e4\n", " 27.005100\n", @@ -3239,7 +3361,7 @@ " 1251499\n", " 388383.156547\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 6.396079\n", " 507971cae2ee4a18\n", " 27.004200\n", @@ -3255,7 +3377,7 @@ " 1249527\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.341527\n", " 50164a42c64cc4f1\n", " 27.015100\n", @@ -3271,7 +3393,7 @@ " 1249440\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.019216\n", " 50187b62b18da535\n", " 27.010000\n", @@ -3287,7 +3409,7 @@ " 1249432\n", " 315887.249576\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.639227\n", " 5057d49b44b4ed21\n", " 27.012200\n", @@ -3303,7 +3425,7 @@ " 1249230\n", " 361687.597350\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.262430\n", " 1bdb3e4628f615be\n", " 27.006300\n", @@ -3319,7 +3441,7 @@ " 1248838\n", " 426627.604763\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.351294\n", " 186e549eb8340f12\n", " 27.034400\n", @@ -3335,7 +3457,7 @@ " 1248716\n", " 402639.913195\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.685916\n", " 1c96000783680ce2\n", " 27.008244\n", @@ -3351,7 +3473,7 @@ " 1248443\n", " 380709.272335\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.001987\n", " 188b8a2690b77569\n", " 27.007400\n", @@ -3367,7 +3489,7 @@ " 1248031\n", " 396231.066521\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.161205\n", " 1c1800034e77b166\n", " 27.001960\n", @@ -3383,7 +3505,7 @@ " 1247949\n", " 334193.979483\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.094927\n", " 1bf4a728749d7de8\n", " 27.001000\n", @@ -3399,7 +3521,7 @@ " 1247906\n", " 334193.979483\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.690287\n", " 1a16000df5456083\n", " 27.026500\n", @@ -3415,7 +3537,7 @@ " 1247634\n", " 390680.078087\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 3.039863\n", " 1a1329402f2206ed\n", " 27.069355\n", @@ -3431,7 +3553,7 @@ " 1246555\n", " 371421.349703\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.535275\n", " 12fc6a2219199f2a\n", " 27.012000\n", @@ -3447,7 +3569,7 @@ " 1246329\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.033313\n", " 1642835a069e4fb9\n", " 27.025700\n", @@ -3463,7 +3585,7 @@ " 1246316\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.072236\n", " 146857274f45ac2c\n", " 27.180640\n", @@ -3479,7 +3601,7 @@ " 1246282\n", " 338457.841118\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.084016\n", " 164237aca8296f1c\n", " 27.012601\n", @@ -3495,7 +3617,7 @@ " 1245573\n", " 345942.822277\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.116772\n", " 12a8cc865d1eb6b1\n", " 27.001253\n", @@ -3511,7 +3633,7 @@ " 1245528\n", " 323130.127436\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.361345\n", " 126a0007f2a34c7c\n", " 27.000000\n", @@ -3527,7 +3649,7 @@ " 1245375\n", " 343213.854779\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.384602\n", " 126b001c1226e666\n", " 27.004100\n", @@ -3543,7 +3665,7 @@ " 1245219\n", " 385248.184230\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.361363\n", " 123200132a4f0053\n", " 27.001000\n", @@ -3559,7 +3681,7 @@ " 1244611\n", " 350337.673747\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.304060\n", " 13309b8b1531ac3d\n", " 27.004400\n", @@ -3575,7 +3697,7 @@ " 1244487\n", " 347763.784750\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.109182\n", " 126b0037bf192dd9\n", " 27.004000\n", @@ -3591,7 +3713,7 @@ " 1243556\n", " 346496.758155\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.384074\n", " 121c61dad76dde64\n", " 27.002200\n", @@ -3607,7 +3729,7 @@ " 1243309\n", " 317174.205629\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.470362\n", " 1232000391a2d9da\n", " 27.009000\n", @@ -3623,7 +3745,7 @@ " 1243018\n", " 353518.612001\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.517238\n", " 124d61659aa64c7a\n", " 27.076500\n", @@ -3639,7 +3761,7 @@ " 1242682\n", " 379295.328612\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.394561\n", " 12200009ea038849\n", " 27.017500\n", @@ -3655,7 +3777,7 @@ " 1241796\n", " 370202.405388\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.980514\n", " 10c71b4fad01f31c\n", " 27.052025\n", @@ -3671,7 +3793,7 @@ " 1240237\n", " 406987.879722\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.156104\n", " 100fe6c78281bfae\n", " 27.130969\n", @@ -3687,7 +3809,7 @@ " 1240101\n", " 411836.853619\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.177793\n", " 10da0014d0866a1a\n", " 27.006200\n", @@ -3703,7 +3825,7 @@ " 1239922\n", " 414752.684611\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.379170\n", " 10111463352887a3\n", " 27.001100\n", @@ -3719,7 +3841,7 @@ " 1239612\n", " 395105.076364\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.270331\n", " 10c7e206ff3da33e\n", " 27.029100\n", @@ -3735,7 +3857,7 @@ " 1238592\n", " 386279.122336\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.608459\n", " 10c72dc2ea84ee3e\n", " 27.002000\n", @@ -3751,7 +3873,7 @@ " 1238040\n", " 399941.963788\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.240973\n", " 101010806c3bfec2\n", " 30.005000\n", @@ -3767,7 +3889,7 @@ " 1236735\n", " 385434.149366\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.675790\n", " 100d40c8c30375f9\n", " 30.025167\n", @@ -3783,7 +3905,7 @@ " 1235990\n", " 387916.169692\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.525286\n", " 20058216259db392\n", " 30.010000\n", @@ -3799,7 +3921,7 @@ " 1235365\n", " 466883.931372\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.169038\n", " d0db3663848642f5\n", " 30.068900\n", @@ -3815,7 +3937,7 @@ " 1235136\n", " 433886.497034\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.348562\n", " d4481db8a1682303\n", " 30.007660\n", @@ -3831,7 +3953,7 @@ " 1234733\n", " 425282.536901\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.926869\n", " d43cfb8db6bde057\n", " 30.008316\n", @@ -3847,7 +3969,7 @@ " 1232662\n", " 385380.245572\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.025904\n", " d88e000ab46f7e8a\n", " 30.000000\n", @@ -3863,7 +3985,7 @@ " 1232628\n", " 363957.496239\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.237322\n", " d10ffd6af9eca406\n", " 30.000000\n", @@ -3879,7 +4001,7 @@ " 1232487\n", " 360630.583506\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 1.012745\n", " dee5be1bf40de25e\n", " 30.013800\n", @@ -3895,7 +4017,7 @@ " 1231651\n", " 367785.409859\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.466819\n", " daa5cc820eedd3d9\n", " 30.001500\n", @@ -3911,7 +4033,7 @@ " 1231144\n", " 405099.842403\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.329434\n", " d88f00142c1483c1\n", " 30.002000\n", @@ -3927,7 +4049,7 @@ " 1230782\n", " 360986.500966\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.030553\n", " d00cd5ba5f2b167c\n", " 30.088260\n", @@ -3943,7 +4065,7 @@ " 1230749\n", " 360986.500966\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.287231\n", " d8a48cee009b608c\n", " 30.006550\n", @@ -3959,7 +4081,7 @@ " 1230547\n", " 434381.378191\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.797385\n", " d6c1191549ab2f07\n", " 30.027600\n", @@ -3975,7 +4097,7 @@ " 1230104\n", " 347635.796935\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 4.752955\n", " d153e8105c7c0b57\n", " 30.001000\n", @@ -3991,7 +4113,7 @@ " 1223980\n", " 416310.690227\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 0.895507\n", " 300b000932aead3a\n", " 30.007862\n", @@ -4007,7 +4129,7 @@ " 1221911\n", " 421209.622611\n", " confirmed\n", - " 1.000000\n", + " 1.0\n", " 2.867494\n", " 705c89a6a4e552cf\n", " 30.007100\n", @@ -4023,8 +4145,8 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 pending \n", - "1 ErgoSigmanauts 1252553 422881.658950 pending \n", + "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", @@ -4080,61 +4202,61 @@ "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", - "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.000000 0.112525 50a3000448228642 27.001000 \n", - "3 1.000000 0.244779 502468dac3622052 27.018200 \n", - "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", - "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", - "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", - "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", - "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", - "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.000000 1.394561 12200009ea038849 27.017500 \n", - "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.000000 0.379170 10111463352887a3 27.001100 \n", - "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.000000 0.525286 20058216259db392 30.010000 \n", - "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", - "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", + "0 1.0 0.017700 56dcc160776a8a71 27.022100 \n", + "1 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", + "2 1.0 0.112525 50a3000448228642 27.001000 \n", + "3 1.0 0.244779 502468dac3622052 27.018200 \n", + "4 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", + "5 1.0 0.261117 555f000b343364e4 27.005100 \n", + "6 1.0 6.396079 507971cae2ee4a18 27.004200 \n", + "7 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", + "8 1.0 0.019216 50187b62b18da535 27.010000 \n", + "9 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", + "10 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", + "11 1.0 0.351294 186e549eb8340f12 27.034400 \n", + "12 1.0 0.685916 1c96000783680ce2 27.008244 \n", + "13 1.0 1.001987 188b8a2690b77569 27.007400 \n", + "14 1.0 0.161205 1c1800034e77b166 27.001960 \n", + "15 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", + "16 1.0 0.690287 1a16000df5456083 27.026500 \n", + "17 1.0 3.039863 1a1329402f2206ed 27.069355 \n", + "18 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", + "19 1.0 0.033313 1642835a069e4fb9 27.025700 \n", + "20 1.0 0.072236 146857274f45ac2c 27.180640 \n", + "21 1.0 2.084016 164237aca8296f1c 27.012601 \n", + "22 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "23 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", + "24 1.0 0.384602 126b001c1226e666 27.004100 \n", + "25 1.0 1.361363 123200132a4f0053 27.001000 \n", + "26 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", + "27 1.0 2.109182 126b0037bf192dd9 27.004000 \n", + "28 1.0 0.384074 121c61dad76dde64 27.002200 \n", + "29 1.0 0.470362 1232000391a2d9da 27.009000 \n", + "30 1.0 0.517238 124d61659aa64c7a 27.076500 \n", + "31 1.0 1.394561 12200009ea038849 27.017500 \n", + "32 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", + "33 1.0 0.156104 100fe6c78281bfae 27.130969 \n", + "34 1.0 0.177793 10da0014d0866a1a 27.006200 \n", + "35 1.0 0.379170 10111463352887a3 27.001100 \n", + "36 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", + "37 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "38 1.0 1.240973 101010806c3bfec2 30.005000 \n", + "39 1.0 0.675790 100d40c8c30375f9 30.025167 \n", + "40 1.0 0.525286 20058216259db392 30.010000 \n", + "41 1.0 0.169038 d0db3663848642f5 30.068900 \n", + "42 1.0 0.348562 d4481db8a1682303 30.007660 \n", + "43 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", + "44 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", + "45 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", + "46 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", + "47 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", + "48 1.0 0.329434 d88f00142c1483c1 30.002000 \n", + "49 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "50 1.0 0.287231 d8a48cee009b608c 30.006550 \n", + "51 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", + "52 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", + "53 1.0 0.895507 300b000932aead3a 30.007862 \n", + "54 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", "\n", " infolink \\\n", "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", @@ -4365,7 +4487,7 @@ "54 2024-03-16 06:45:27 " ] }, - "execution_count": 17, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } @@ -4402,24 +4524,24 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 20, "id": "87e75bbe-1f4e-408c-bca1-4f4bc691e749", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "{'Pending Shares': 350.037,\n", + "{'Pending Shares': 107.475,\n", " 'Pending Balance': 0.0,\n", - " 'Total Paid': 277.147,\n", - " 'Paid Today': 0,\n", + " 'Total Paid': 282.143,\n", + " 'Paid Today': 4.996672475194,\n", " 'Schema': 'PPLNS',\n", " 'Price': 1.36,\n", - " 'Last Payment': '2024-04-27',\n", - " 'lastPaymentLink': 'https://explorer.ergoplatform.com/en/transactions/21ed45c3e6e33a2c8ff6320ad9cd82a2f5197463f54f1312ebac9449e0288e49'}" + " 'Last Payment': '2024-04-28',\n", + " 'lastPaymentLink': 'https://explorer.ergoplatform.com/en/transactions/021f50ff0da413ddd34595ee6760558350ff96cf03a017429e96666dacb364a6'}" ] }, - "execution_count": 18, + "execution_count": 20, "metadata": {}, "output_type": "execute_result" } @@ -4430,7 +4552,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 21, "id": "023eb723-741b-480e-a696-ac772a258c46", "metadata": {}, "outputs": [ @@ -4440,7 +4562,7 @@ "51" ] }, - "execution_count": 19, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" } @@ -4451,7 +4573,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 22, "id": "b606029e-c7e4-47a1-b1b5-9902c645bea1", "metadata": {}, "outputs": [], @@ -4477,7 +4599,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 23, "id": "33e18bdb-6bd5-4f77-8ef3-38e6e86225a1", "metadata": {}, "outputs": [], @@ -4503,200 +4625,12 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "id": "ed44bf4e-691d-4a53-ad56-2e43d56153d5", "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Table payment deleted successfully.\n", - "Table live_worker deleted successfully.\n", - "Table performance deleted successfully.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "no live data\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'Schema', 'Price', 'lastPayment', 'lastPaymentLink'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "no live data\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'Schema', 'Price', 'lastPayment', 'lastPaymentLink'])\n", - "no live data\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'Schema', 'Price', 'lastPayment', 'lastPaymentLink'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "no live data\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "no live data\n", - "payments inserted\n", - "performance inserted\n", - "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n", - "live worker inserted\n", - "payments inserted\n", - "performance inserted\n" - ] - } - ], + "outputs": [], "source": [ "database = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db')\n", "database.connect()\n", @@ -4788,224 +4722,10 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": null, "id": "632ec239-2721-4f5f-9bcd-e9592622f183", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
workerhashrateshares_per_secondcreatedminereffortttflast_block_found
03950c56d934.090.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...6.28622.5052024-04-26 18:24:58
16600xt_Rig574.020.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...3.86336.6222024-04-26 18:24:58
28GPU_Rig1176.150.102024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...7.91417.8732024-04-26 18:24:58
3EpycDownstairs570.600.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...3.84036.8422024-04-26 18:24:58
4MinerDude_12x759.690.072024-04-28 04:20:349g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...5.11227.6722024-04-26 18:24:58
...........................
65STINKY199.330.042024-04-28 04:20:349fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...1.002105.463N/A
66qx3090288.820.062024-04-28 04:20:349eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...27.96172.7852024-04-07 19:55:43
67FubinbouErgoTrexMiner145.260.032024-04-28 04:20:349iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...0.730144.719N/A
68rustinmyeye115.000.032024-04-28 04:20:349iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...23.469182.7992024-03-16 06:45:27
69waga138.000.032024-04-28 04:20:349gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...0.694152.332N/A
\n", - "

70 rows × 8 columns

\n", - "
" - ], - "text/plain": [ - " worker hashrate shares_per_second created \\\n", - "0 3950c56d 934.09 0.07 2024-04-28 04:20:34 \n", - "1 6600xt_Rig 574.02 0.07 2024-04-28 04:20:34 \n", - "2 8GPU_Rig 1176.15 0.10 2024-04-28 04:20:34 \n", - "3 EpycDownstairs 570.60 0.07 2024-04-28 04:20:34 \n", - "4 MinerDude_12x 759.69 0.07 2024-04-28 04:20:34 \n", - ".. ... ... ... ... \n", - "65 STINKY 199.33 0.04 2024-04-28 04:20:34 \n", - "66 qx3090 288.82 0.06 2024-04-28 04:20:34 \n", - "67 FubinbouErgoTrexMiner 145.26 0.03 2024-04-28 04:20:34 \n", - "68 rustinmyeye 115.00 0.03 2024-04-28 04:20:34 \n", - "69 waga 138.00 0.03 2024-04-28 04:20:34 \n", - "\n", - " miner effort ttf \\\n", - "0 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 6.286 22.505 \n", - "1 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 3.863 36.622 \n", - "2 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 7.914 17.873 \n", - "3 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 3.840 36.842 \n", - "4 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 5.112 27.672 \n", - ".. ... ... ... \n", - "65 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... 1.002 105.463 \n", - "66 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... 27.961 72.785 \n", - "67 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... 0.730 144.719 \n", - "68 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... 23.469 182.799 \n", - "69 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 0.694 152.332 \n", - "\n", - " last_block_found \n", - "0 2024-04-26 18:24:58 \n", - "1 2024-04-26 18:24:58 \n", - "2 2024-04-26 18:24:58 \n", - "3 2024-04-26 18:24:58 \n", - "4 2024-04-26 18:24:58 \n", - ".. ... \n", - "65 N/A \n", - "66 2024-04-07 19:55:43 \n", - "67 N/A \n", - "68 2024-03-16 06:45:27 \n", - "69 N/A \n", - "\n", - "[70 rows x 8 columns]" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "lw = database.fetch_data('live_worker')\n", "lw" @@ -5013,112 +4733,10 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": null, "id": "91ba8790-2106-4b10-8498-7a8b151df1df", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
workerhashrateshares_per_secondcreatedminer
03950c56d759.340.062024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
16600xt_Rig439.510.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
28GPU_Rig1170.950.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
38GPU_Rig_3060ti1252.930.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
4EpycDownstairs480.550.072024-04-27 03:00:009g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
\n", - "
" - ], - "text/plain": [ - " worker hashrate shares_per_second created \\\n", - "0 3950c56d 759.34 0.06 2024-04-27 03:00:00 \n", - "1 6600xt_Rig 439.51 0.07 2024-04-27 03:00:00 \n", - "2 8GPU_Rig 1170.95 0.07 2024-04-27 03:00:00 \n", - "3 8GPU_Rig_3060ti 1252.93 0.07 2024-04-27 03:00:00 \n", - "4 EpycDownstairs 480.55 0.07 2024-04-27 03:00:00 \n", - "\n", - " miner \n", - "0 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", - "1 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", - "2 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", - "3 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", - "4 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... " - ] - }, - "execution_count": 39, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df = database.fetch_data('performance')\n", "df.head()# need to create totals per created column for total hashrate plot" @@ -5126,7 +4744,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": null, "id": "1553dcfc-06e4-40a9-bc2e-bff1a1d415f4", "metadata": {}, "outputs": [], @@ -5141,1012 +4759,21 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": null, "id": "72f378de-b73e-4766-bd92-3877a58ff28d", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
hashrateshares_per_secondworkerminer
created
2024-04-27 03:00:0049.147144.306434
2024-04-27 04:00:0050.538984.406535
2024-04-27 05:00:0051.388284.336536
2024-04-27 06:00:0051.859794.326436
2024-04-27 07:00:0052.230234.366335
2024-04-27 08:00:0051.435804.336335
2024-04-27 09:00:0052.074634.346335
2024-04-27 10:00:0051.237564.256334
2024-04-27 11:00:0052.393304.376336
2024-04-27 12:00:0051.207374.356437
2024-04-27 13:00:0049.461674.166137
2024-04-27 14:00:0049.241924.176136
2024-04-27 15:00:0048.150434.196136
2024-04-27 16:00:0049.284024.256136
2024-04-27 17:00:0049.419254.196236
2024-04-27 18:00:0049.536714.166135
2024-04-27 19:00:0049.892404.196234
2024-04-27 20:00:0049.936114.036134
2024-04-27 21:00:0049.543304.096335
2024-04-27 22:00:0050.328344.276235
2024-04-27 23:00:0051.521994.326336
2024-04-28 00:00:0049.367424.256335
2024-04-28 01:00:0049.759264.246334
2024-04-28 02:00:0049.252684.306434
\n", - "
" - ], - "text/plain": [ - " hashrate shares_per_second worker miner\n", - "created \n", - "2024-04-27 03:00:00 49.14714 4.30 64 34\n", - "2024-04-27 04:00:00 50.53898 4.40 65 35\n", - "2024-04-27 05:00:00 51.38828 4.33 65 36\n", - "2024-04-27 06:00:00 51.85979 4.32 64 36\n", - "2024-04-27 07:00:00 52.23023 4.36 63 35\n", - "2024-04-27 08:00:00 51.43580 4.33 63 35\n", - "2024-04-27 09:00:00 52.07463 4.34 63 35\n", - "2024-04-27 10:00:00 51.23756 4.25 63 34\n", - "2024-04-27 11:00:00 52.39330 4.37 63 36\n", - "2024-04-27 12:00:00 51.20737 4.35 64 37\n", - "2024-04-27 13:00:00 49.46167 4.16 61 37\n", - "2024-04-27 14:00:00 49.24192 4.17 61 36\n", - "2024-04-27 15:00:00 48.15043 4.19 61 36\n", - "2024-04-27 16:00:00 49.28402 4.25 61 36\n", - "2024-04-27 17:00:00 49.41925 4.19 62 36\n", - "2024-04-27 18:00:00 49.53671 4.16 61 35\n", - "2024-04-27 19:00:00 49.89240 4.19 62 34\n", - "2024-04-27 20:00:00 49.93611 4.03 61 34\n", - "2024-04-27 21:00:00 49.54330 4.09 63 35\n", - "2024-04-27 22:00:00 50.32834 4.27 62 35\n", - "2024-04-27 23:00:00 51.52199 4.32 63 36\n", - "2024-04-28 00:00:00 49.36742 4.25 63 35\n", - "2024-04-28 01:00:00 49.75926 4.24 63 34\n", - "2024-04-28 02:00:00 49.25268 4.30 64 34" - ] - }, - "execution_count": 38, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "aggregated_df['hashrate'] = aggregated_df['hashrate'] / 1e3 # converts MH/s to Gh/s\n", - "aggregated_df" + "aggregated_df.sort_values(['created'])" ] }, { "cell_type": "code", - "execution_count": 26, + "execution_count": null, "id": "cfe43a1b-9634-4e6e-84ca-bac8d95bbadc", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
pendingsharespendingbalancetotalpaidtodaypaidschemapricelastpaymentlastpaymentlinkcreated_atminer
0299.3366420.00000042.1517100.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
1352.4957130.00000094.1999540.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
2350.0365240.000000277.1466650.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...
3292.3840570.00000064.8815500.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...
4243.0267950.000000204.9677670.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...
5235.8352550.00000055.8385320.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...
6254.0899990.000000198.6029260.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
752.4335710.00000017.3956550.0PPLNS2.02024-04-26https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...
8163.5716800.00000019.6832090.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...
9169.8243070.00000012.6072520.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj...
1026.0368050.0329770.0000000.0PPLNS2.0N/AKeep Mining!2024-04-27 22:21:56.1378019hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd...
1185.4507440.0000001.0184070.0PPLNS2.02024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ...
12121.7501730.00000045.3675500.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5...
13105.8240460.00000052.5351570.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...
1483.5709280.0000002.9329750.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q...
1579.6565460.00000065.7585870.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...
1670.7282110.0000002.4371050.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...
1769.6700580.00000016.3806950.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN...
1869.3792340.0000005.2123760.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...
1973.8044410.00000061.5138420.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...
2066.2112780.4894154.4954120.0PPLNS2.02024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS...
2165.4715710.0000006.8158300.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA...
2227.7553170.2907124.6018410.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...
235.6201670.0000004.1592340.0PPLNS2.02024-04-22https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gW4BxS6x8pF7BVMsE2VPpKTEHaDB9Nw1mp6MEpn5MWAmX...
2420.9483320.25247012.9167440.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...
2533.0235700.2342234.2059620.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...
2626.3946810.00000017.3218990.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...
276.1212080.0841533.0795220.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD...
2822.0241450.1556872.1573970.0PPLNS2.02024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y...
2927.4835730.39154018.3547300.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...
3022.1979140.00000017.2067110.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89...
3121.9597240.1592413.5965240.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf...
320.0181900.0000000.0000000.0PPLNS2.0N/AKeep Mining!2024-04-27 22:21:56.1378019g4iUef8r8MuiDmR6bgADB5Bj6NYL6AsVUv31ERnmWJskL...
3320.6486050.0000004.0493370.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM...
346.9340770.2019450.0000000.0PPLNS2.0N/AKeep Mining!2024-04-27 22:21:56.1378019fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...
3517.9196690.00000015.7311720.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...
3610.0028080.0772472.3317810.0PPLNS2.02024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...
374.7110830.1782600.1634870.0PPLNS2.02024-04-18https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019fvDaBsLKmzP67Cp2i2bmhM1359HhJCrej8y5EGoUcmXDr...
388.2181270.4735136.0441670.0PPLNS2.02024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...
393.3054470.0000000.3264440.0PPLNS2.02024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi...
406.9376800.4013040.5197830.0PPLNS2.02024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-27 22:21:56.1378019gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...
\n", - "
" - ], - "text/plain": [ - " pendingshares pendingbalance totalpaid todaypaid schema price \\\n", - "0 299.336642 0.000000 42.151710 0.0 PPLNS 2.0 \n", - "1 352.495713 0.000000 94.199954 0.0 PPLNS 2.0 \n", - "2 350.036524 0.000000 277.146665 0.0 PPLNS 2.0 \n", - "3 292.384057 0.000000 64.881550 0.0 PPLNS 2.0 \n", - "4 243.026795 0.000000 204.967767 0.0 PPLNS 2.0 \n", - "5 235.835255 0.000000 55.838532 0.0 PPLNS 2.0 \n", - "6 254.089999 0.000000 198.602926 0.0 PPLNS 2.0 \n", - "7 52.433571 0.000000 17.395655 0.0 PPLNS 2.0 \n", - "8 163.571680 0.000000 19.683209 0.0 PPLNS 2.0 \n", - "9 169.824307 0.000000 12.607252 0.0 PPLNS 2.0 \n", - "10 26.036805 0.032977 0.000000 0.0 PPLNS 2.0 \n", - "11 85.450744 0.000000 1.018407 0.0 PPLNS 2.0 \n", - "12 121.750173 0.000000 45.367550 0.0 PPLNS 2.0 \n", - "13 105.824046 0.000000 52.535157 0.0 PPLNS 2.0 \n", - "14 83.570928 0.000000 2.932975 0.0 PPLNS 2.0 \n", - "15 79.656546 0.000000 65.758587 0.0 PPLNS 2.0 \n", - "16 70.728211 0.000000 2.437105 0.0 PPLNS 2.0 \n", - "17 69.670058 0.000000 16.380695 0.0 PPLNS 2.0 \n", - "18 69.379234 0.000000 5.212376 0.0 PPLNS 2.0 \n", - "19 73.804441 0.000000 61.513842 0.0 PPLNS 2.0 \n", - "20 66.211278 0.489415 4.495412 0.0 PPLNS 2.0 \n", - "21 65.471571 0.000000 6.815830 0.0 PPLNS 2.0 \n", - "22 27.755317 0.290712 4.601841 0.0 PPLNS 2.0 \n", - "23 5.620167 0.000000 4.159234 0.0 PPLNS 2.0 \n", - "24 20.948332 0.252470 12.916744 0.0 PPLNS 2.0 \n", - "25 33.023570 0.234223 4.205962 0.0 PPLNS 2.0 \n", - "26 26.394681 0.000000 17.321899 0.0 PPLNS 2.0 \n", - "27 6.121208 0.084153 3.079522 0.0 PPLNS 2.0 \n", - "28 22.024145 0.155687 2.157397 0.0 PPLNS 2.0 \n", - "29 27.483573 0.391540 18.354730 0.0 PPLNS 2.0 \n", - "30 22.197914 0.000000 17.206711 0.0 PPLNS 2.0 \n", - "31 21.959724 0.159241 3.596524 0.0 PPLNS 2.0 \n", - "32 0.018190 0.000000 0.000000 0.0 PPLNS 2.0 \n", - "33 20.648605 0.000000 4.049337 0.0 PPLNS 2.0 \n", - "34 6.934077 0.201945 0.000000 0.0 PPLNS 2.0 \n", - "35 17.919669 0.000000 15.731172 0.0 PPLNS 2.0 \n", - "36 10.002808 0.077247 2.331781 0.0 PPLNS 2.0 \n", - "37 4.711083 0.178260 0.163487 0.0 PPLNS 2.0 \n", - "38 8.218127 0.473513 6.044167 0.0 PPLNS 2.0 \n", - "39 3.305447 0.000000 0.326444 0.0 PPLNS 2.0 \n", - "40 6.937680 0.401304 0.519783 0.0 PPLNS 2.0 \n", - "\n", - " lastpayment lastpaymentlink \\\n", - "0 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "1 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "2 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "3 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "4 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "5 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "6 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "7 2024-04-26 https://explorer.ergoplatform.com/en/transacti... \n", - "8 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "9 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "10 N/A Keep Mining! \n", - "11 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", - "12 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "13 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "14 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "15 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "16 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "17 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "18 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "19 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "20 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", - "21 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "22 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "23 2024-04-22 https://explorer.ergoplatform.com/en/transacti... \n", - "24 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "25 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "26 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "27 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "28 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", - "29 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "30 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "31 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "32 N/A Keep Mining! \n", - "33 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "34 N/A Keep Mining! \n", - "35 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "36 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "37 2024-04-18 https://explorer.ergoplatform.com/en/transacti... \n", - "38 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", - "39 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", - "40 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", - "\n", - " created_at \\\n", - "0 2024-04-27 22:21:56.137801 \n", - "1 2024-04-27 22:21:56.137801 \n", - "2 2024-04-27 22:21:56.137801 \n", - "3 2024-04-27 22:21:56.137801 \n", - "4 2024-04-27 22:21:56.137801 \n", - "5 2024-04-27 22:21:56.137801 \n", - "6 2024-04-27 22:21:56.137801 \n", - "7 2024-04-27 22:21:56.137801 \n", - "8 2024-04-27 22:21:56.137801 \n", - "9 2024-04-27 22:21:56.137801 \n", - "10 2024-04-27 22:21:56.137801 \n", - "11 2024-04-27 22:21:56.137801 \n", - "12 2024-04-27 22:21:56.137801 \n", - "13 2024-04-27 22:21:56.137801 \n", - "14 2024-04-27 22:21:56.137801 \n", - "15 2024-04-27 22:21:56.137801 \n", - "16 2024-04-27 22:21:56.137801 \n", - "17 2024-04-27 22:21:56.137801 \n", - "18 2024-04-27 22:21:56.137801 \n", - "19 2024-04-27 22:21:56.137801 \n", - "20 2024-04-27 22:21:56.137801 \n", - "21 2024-04-27 22:21:56.137801 \n", - "22 2024-04-27 22:21:56.137801 \n", - "23 2024-04-27 22:21:56.137801 \n", - "24 2024-04-27 22:21:56.137801 \n", - "25 2024-04-27 22:21:56.137801 \n", - "26 2024-04-27 22:21:56.137801 \n", - "27 2024-04-27 22:21:56.137801 \n", - "28 2024-04-27 22:21:56.137801 \n", - "29 2024-04-27 22:21:56.137801 \n", - "30 2024-04-27 22:21:56.137801 \n", - "31 2024-04-27 22:21:56.137801 \n", - "32 2024-04-27 22:21:56.137801 \n", - "33 2024-04-27 22:21:56.137801 \n", - "34 2024-04-27 22:21:56.137801 \n", - "35 2024-04-27 22:21:56.137801 \n", - "36 2024-04-27 22:21:56.137801 \n", - "37 2024-04-27 22:21:56.137801 \n", - "38 2024-04-27 22:21:56.137801 \n", - "39 2024-04-27 22:21:56.137801 \n", - "40 2024-04-27 22:21:56.137801 \n", - "\n", - " miner \n", - "0 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", - "1 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "2 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... \n", - "3 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... \n", - "4 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... \n", - "5 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... \n", - "6 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "7 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... \n", - "8 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... \n", - "9 9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj... \n", - "10 9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd... \n", - "11 9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ... \n", - "12 9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5... \n", - "13 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... \n", - "14 9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q... \n", - "15 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... \n", - "16 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... \n", - "17 9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN... \n", - "18 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... \n", - "19 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... \n", - "20 9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS... \n", - "21 9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA... \n", - "22 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... \n", - "23 9gW4BxS6x8pF7BVMsE2VPpKTEHaDB9Nw1mp6MEpn5MWAmX... \n", - "24 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... \n", - "25 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... \n", - "26 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... \n", - "27 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD... \n", - "28 9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y... \n", - "29 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... \n", - "30 9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89... \n", - "31 9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf... \n", - "32 9g4iUef8r8MuiDmR6bgADB5Bj6NYL6AsVUv31ERnmWJskL... \n", - "33 9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM... \n", - "34 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... \n", - "35 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... \n", - "36 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... \n", - "37 9fvDaBsLKmzP67Cp2i2bmhM1359HhJCrej8y5EGoUcmXDr... \n", - "38 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... \n", - "39 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi... \n", - "40 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... " - ] - }, - "execution_count": 26, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df = database.fetch_data('payment')\n", "df" @@ -6154,1398 +4781,42 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": null, "id": "9f89db75-7384-42f9-982f-95160f68a7c3", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - } - ], + "outputs": [], "source": [ "block = database.fetch_data('block')" ] }, { "cell_type": "code", - "execution_count": 28, + "execution_count": null, "id": "0add200d-87cf-4d81-9377-6152824aafa3", "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.658950pending0.4722220.01770056dcc160776a8a7127.022100https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...ErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.658950pending0.5555561.85688250230ed620a8fa0b27.000000https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.285885confirmed1.0000000.11252550a300044822864227.001000https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.443497confirmed1.0000000.244779502468dac362205227.018200https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.443497confirmed1.0000001.03993150d8fd9c81187de227.008800https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...ErgoSigmanauts2024-04-27 04:31:16
5ErgoSigmanauts1251567388383.156547confirmed1.0000000.261117555f000b343364e427.005100https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-26 18:24:58
6ErgoSigmanauts1251499388383.156547confirmed1.0000006.396079507971cae2ee4a1827.004200https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-26 16:00:40
7ErgoSigmanauts1249527315887.249576confirmed1.0000000.34152750164a42c64cc4f127.015100https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...ErgoSigmanauts2024-04-23 22:19:10
8ErgoSigmanauts1249440315887.249576confirmed1.0000000.01921650187b62b18da53527.010000https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-23 19:17:03
9ErgoSigmanauts1249432315887.249576confirmed1.0000000.6392275057d49b44b4ed2127.012200https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...ErgoSigmanauts2024-04-23 19:06:49
10ErgoSigmanauts1249230361687.597350confirmed1.0000001.2624301bdb3e4628f615be27.006300https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...ErgoSigmanauts2024-04-23 12:18:50
11ErgoSigmanauts1248838426627.604763confirmed1.0000000.351294186e549eb8340f1227.034400https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-22 22:07:16
12ErgoSigmanauts1248716402639.913195confirmed1.0000000.6859161c96000783680ce227.008244https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...ErgoSigmanauts2024-04-22 18:11:34
13ErgoSigmanauts1248443380709.272335confirmed1.0000001.001987188b8a2690b7756927.007400https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...ErgoSigmanauts2024-04-22 09:12:21
14ErgoSigmanauts1248031396231.066521confirmed1.0000000.1612051c1800034e77b16627.001960https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-21 18:58:55
15ErgoSigmanauts1247949334193.979483confirmed1.0000000.0949271bf4a728749d7de827.001000https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-21 16:57:09
16ErgoSigmanauts1247906334193.979483confirmed1.0000000.6902871a16000df545608327.026500https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 15:49:03
17ErgoSigmanauts1247634390680.078087confirmed1.0000003.0398631a1329402f2206ed27.069355https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-21 05:49:18
18ErgoSigmanauts1246555371421.349703confirmed1.0000000.53527512fc6a2219199f2a27.012000https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-19 17:13:40
19ErgoSigmanauts1246329338457.841118confirmed1.0000000.0333131642835a069e4fb927.025700https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 10:06:26
20ErgoSigmanauts1246316338457.841118confirmed1.0000000.072236146857274f45ac2c27.180640https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...ErgoSigmanauts2024-04-19 09:41:15
21ErgoSigmanauts1246282338457.841118confirmed1.0000002.084016164237aca8296f1c27.012601https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...ErgoSigmanauts2024-04-19 08:45:52
22ErgoSigmanauts1245573345942.822277confirmed1.0000000.11677212a8cc865d1eb6b127.001253https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-18 09:31:37
23ErgoSigmanauts1245528323130.127436confirmed1.0000000.361345126a0007f2a34c7c27.000000https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 08:01:31
24ErgoSigmanauts1245375343213.854779confirmed1.0000000.384602126b001c1226e66627.004100https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-18 03:11:44
25ErgoSigmanauts1245219385248.184230confirmed1.0000001.361363123200132a4f005327.001000https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-17 21:39:45
26ErgoSigmanauts1244611350337.673747confirmed1.0000000.30406013309b8b1531ac3d27.004400https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-04-17 01:03:11
27ErgoSigmanauts1244487347763.784750confirmed1.0000002.109182126b0037bf192dd927.004000https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-04-16 20:53:07
28ErgoSigmanauts1243556346496.758155confirmed1.0000000.384074121c61dad76dde6427.002200https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-15 13:26:36
29ErgoSigmanauts1243309317174.205629confirmed1.0000000.4703621232000391a2d9da27.009000https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-15 05:58:59
30ErgoSigmanauts1243018353518.612001confirmed1.0000000.517238124d61659aa64c7a27.076500https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...ErgoSigmanauts2024-04-14 19:46:29
31ErgoSigmanauts1242682379295.328612confirmed1.0000001.39456112200009ea03884927.017500https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-04-14 07:53:57
32ErgoSigmanauts1241796370202.405388confirmed1.0000001.98051410c71b4fad01f31c27.052025https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-13 01:40:15
33ErgoSigmanauts1240237406987.879722confirmed1.0000000.156104100fe6c78281bfae27.130969https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 21:52:48
34ErgoSigmanauts1240101411836.853619confirmed1.0000000.17779310da0014d0866a1a27.006200https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...ErgoSigmanauts2024-04-10 16:45:58
35ErgoSigmanauts1239922414752.684611confirmed1.0000000.37917010111463352887a327.001100https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-10 11:38:14
36ErgoSigmanauts1239612395105.076364confirmed1.0000001.27033110c7e206ff3da33e27.029100https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-09 23:57:08
37ErgoSigmanauts1238592386279.122336confirmed1.0000000.60845910c72dc2ea84ee3e27.002000https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...ErgoSigmanauts2024-04-08 14:35:09
38ErgoSigmanauts1238040399941.963788confirmed1.0000001.240973101010806c3bfec230.005000https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...ErgoSigmanauts2024-04-07 19:55:43
39ErgoSigmanauts1236735385434.149366confirmed1.0000000.675790100d40c8c30375f930.025167https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-06 00:11:43
40ErgoSigmanauts1235990387916.169692confirmed1.0000000.52528620058216259db39230.010000https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-04-04 23:46:44
41ErgoSigmanauts1235365466883.931372confirmed1.0000000.169038d0db3663848642f530.068900https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...ErgoSigmanauts2024-04-04 01:40:19
42ErgoSigmanauts1235136433886.497034confirmed1.0000000.348562d4481db8a168230330.007660https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-04-03 18:22:18
43ErgoSigmanauts1234733425282.536901confirmed1.0000001.926869d43cfb8db6bde05730.008316https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-04-03 04:57:28
44ErgoSigmanauts1232662385380.245572confirmed1.0000000.025904d88e000ab46f7e8a30.000000https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-31 07:40:29
45ErgoSigmanauts1232628363957.496239confirmed1.0000000.237322d10ffd6af9eca40630.000000https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...ErgoSigmanauts2024-03-31 06:53:18
46ErgoSigmanauts1232487360630.583506confirmed1.0000001.012745dee5be1bf40de25e30.013800https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...ErgoSigmanauts2024-03-31 02:11:27
47ErgoSigmanauts1231651367785.409859confirmed1.0000000.466819daa5cc820eedd3d930.001500https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 22:22:38
48ErgoSigmanauts1231144405099.842403confirmed1.0000000.329434d88f00142c1483c130.002000https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...ErgoSigmanauts2024-03-29 04:26:22
49ErgoSigmanauts1230782360986.500966confirmed1.0000000.030553d00cd5ba5f2b167c30.088260https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...ErgoSigmanauts2024-03-28 16:41:02
50ErgoSigmanauts1230749360986.500966confirmed1.0000000.287231d8a48cee009b608c30.006550https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...ErgoSigmanauts2024-03-28 15:40:37
51ErgoSigmanauts1230547434381.378191confirmed1.0000000.797385d6c1191549ab2f0730.027600https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-28 08:26:49
52ErgoSigmanauts1230104347635.796935confirmed1.0000004.752955d153e8105c7c0b5730.001000https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw...ErgoSigmanauts2024-03-27 18:07:25
53ErgoSigmanauts1223980416310.690227confirmed1.0000000.895507300b000932aead3a30.007862https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...ErgoSigmanauts2024-03-19 04:19:20
54ErgoSigmanauts1221911421209.622611confirmed1.0000002.867494705c89a6a4e552cf30.007100https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...ErgoSigmanauts2024-03-16 06:45:27
\n", - "
" - ], - "text/plain": [ - " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 pending \n", - "1 ErgoSigmanauts 1252553 422881.658950 pending \n", - "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", - "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", - "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", - "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", - "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", - "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", - "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", - "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", - "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", - "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", - "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", - "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", - "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", - "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", - "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", - "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", - "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", - "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", - "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", - "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", - "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", - "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", - "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", - "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", - "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", - "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", - "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", - "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", - "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", - "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", - "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", - "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", - "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", - "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", - "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", - "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", - "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", - "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", - "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", - "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", - "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", - "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", - "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", - "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", - "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", - "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", - "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", - "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", - "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", - "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", - "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", - "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", - "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", - "\n", - " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 0.472222 0.017700 56dcc160776a8a71 27.022100 \n", - "1 0.555556 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.000000 0.112525 50a3000448228642 27.001000 \n", - "3 1.000000 0.244779 502468dac3622052 27.018200 \n", - "4 1.000000 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.000000 0.261117 555f000b343364e4 27.005100 \n", - "6 1.000000 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.000000 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.000000 0.019216 50187b62b18da535 27.010000 \n", - "9 1.000000 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.000000 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.000000 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.000000 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.000000 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.000000 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.000000 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.000000 0.690287 1a16000df5456083 27.026500 \n", - "17 1.000000 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.000000 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.000000 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.000000 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.000000 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.000000 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.000000 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.000000 0.384602 126b001c1226e666 27.004100 \n", - "25 1.000000 1.361363 123200132a4f0053 27.001000 \n", - "26 1.000000 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.000000 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.000000 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.000000 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.000000 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.000000 1.394561 12200009ea038849 27.017500 \n", - "32 1.000000 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.000000 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.000000 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.000000 0.379170 10111463352887a3 27.001100 \n", - "36 1.000000 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.000000 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.000000 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.000000 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.000000 0.525286 20058216259db392 30.010000 \n", - "41 1.000000 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.000000 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.000000 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.000000 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.000000 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.000000 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.000000 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.000000 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.000000 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.000000 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.000000 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.000000 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.000000 0.895507 300b000932aead3a 30.007862 \n", - "54 1.000000 2.867494 705c89a6a4e552cf 30.007100 \n", - "\n", - " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "2 https://explorer.ergoplatform.com/en/blocks/58... \n", - "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", - "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", - "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", - "8 https://explorer.ergoplatform.com/en/blocks/22... \n", - "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", - "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", - "11 https://explorer.ergoplatform.com/en/blocks/17... \n", - "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", - "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "14 https://explorer.ergoplatform.com/en/blocks/92... \n", - "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", - "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "18 https://explorer.ergoplatform.com/en/blocks/40... \n", - "19 https://explorer.ergoplatform.com/en/blocks/32... \n", - "20 https://explorer.ergoplatform.com/en/blocks/02... \n", - "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", - "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", - "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", - "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "25 https://explorer.ergoplatform.com/en/blocks/32... \n", - "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", - "27 https://explorer.ergoplatform.com/en/blocks/79... \n", - "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", - "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", - "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", - "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "32 https://explorer.ergoplatform.com/en/blocks/39... \n", - "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "34 https://explorer.ergoplatform.com/en/blocks/10... \n", - "35 https://explorer.ergoplatform.com/en/blocks/db... \n", - "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "37 https://explorer.ergoplatform.com/en/blocks/91... \n", - "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", - "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", - "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", - "41 https://explorer.ergoplatform.com/en/blocks/00... \n", - "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", - "43 https://explorer.ergoplatform.com/en/blocks/85... \n", - "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", - "45 https://explorer.ergoplatform.com/en/blocks/48... \n", - "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", - "47 https://explorer.ergoplatform.com/en/blocks/20... \n", - "48 https://explorer.ergoplatform.com/en/blocks/27... \n", - "49 https://explorer.ergoplatform.com/en/blocks/33... \n", - "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "53 https://explorer.ergoplatform.com/en/blocks/83... \n", - "54 https://explorer.ergoplatform.com/en/blocks/47... \n", - "\n", - " hash \\\n", - "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", - "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", - "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", - "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", - "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", - "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", - "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", - "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", - "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", - "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", - "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", - "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", - "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", - "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", - "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", - "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", - "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", - "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", - "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", - "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", - "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", - "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", - "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", - "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", - "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", - "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", - "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", - "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", - "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", - "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", - "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", - "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", - "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", - "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", - "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", - "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", - "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", - "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", - "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", - "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", - "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", - "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", - "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", - "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", - "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", - "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", - "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", - "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", - "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", - "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", - "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", - "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", - "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", - "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", - "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", - "\n", - " miner source \\\n", - "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", - "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", - "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", - "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", - "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", - "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", - "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", - "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", - "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", - "\n", - " time_found \n", - "0 2024-04-28 03:06:52 \n", - "1 2024-04-28 02:55:03 \n", - "2 2024-04-27 07:59:45 \n", - "3 2024-04-27 06:54:45 \n", - "4 2024-04-27 04:31:16 \n", - "5 2024-04-26 18:24:58 \n", - "6 2024-04-26 16:00:40 \n", - "7 2024-04-23 22:19:10 \n", - "8 2024-04-23 19:17:03 \n", - "9 2024-04-23 19:06:49 \n", - "10 2024-04-23 12:18:50 \n", - "11 2024-04-22 22:07:16 \n", - "12 2024-04-22 18:11:34 \n", - "13 2024-04-22 09:12:21 \n", - "14 2024-04-21 18:58:55 \n", - "15 2024-04-21 16:57:09 \n", - "16 2024-04-21 15:49:03 \n", - "17 2024-04-21 05:49:18 \n", - "18 2024-04-19 17:13:40 \n", - "19 2024-04-19 10:06:26 \n", - "20 2024-04-19 09:41:15 \n", - "21 2024-04-19 08:45:52 \n", - "22 2024-04-18 09:31:37 \n", - "23 2024-04-18 08:01:31 \n", - "24 2024-04-18 03:11:44 \n", - "25 2024-04-17 21:39:45 \n", - "26 2024-04-17 01:03:11 \n", - "27 2024-04-16 20:53:07 \n", - "28 2024-04-15 13:26:36 \n", - "29 2024-04-15 05:58:59 \n", - "30 2024-04-14 19:46:29 \n", - "31 2024-04-14 07:53:57 \n", - "32 2024-04-13 01:40:15 \n", - "33 2024-04-10 21:52:48 \n", - "34 2024-04-10 16:45:58 \n", - "35 2024-04-10 11:38:14 \n", - "36 2024-04-09 23:57:08 \n", - "37 2024-04-08 14:35:09 \n", - "38 2024-04-07 19:55:43 \n", - "39 2024-04-06 00:11:43 \n", - "40 2024-04-04 23:46:44 \n", - "41 2024-04-04 01:40:19 \n", - "42 2024-04-03 18:22:18 \n", - "43 2024-04-03 04:57:28 \n", - "44 2024-03-31 07:40:29 \n", - "45 2024-03-31 06:53:18 \n", - "46 2024-03-31 02:11:27 \n", - "47 2024-03-29 22:22:38 \n", - "48 2024-03-29 04:26:22 \n", - "49 2024-03-28 16:41:02 \n", - "50 2024-03-28 15:40:37 \n", - "51 2024-03-28 08:26:49 \n", - "52 2024-03-27 18:07:25 \n", - "53 2024-03-19 04:19:20 \n", - "54 2024-03-16 06:45:27 " - ] - }, - "execution_count": 28, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "block" ] }, { "cell_type": "code", - "execution_count": 29, + "execution_count": null, "id": "b37dcb7b-a82c-468f-9fc5-108541ad9d93", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.9001368828200207" - ] - }, - "execution_count": 29, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "block.effort.sum() / len(block.effort)" ] }, { "cell_type": "code", - "execution_count": 30, + "execution_count": null, "id": "c4815e68-b77d-4513-b240-a9d134115a08", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0 0.017700\n", - "1 0.937291\n", - "2 0.662369\n", - "3 0.557971\n", - "4 0.654363\n", - "5 0.588822\n", - "6 1.418430\n", - "7 1.283817\n", - "8 1.143306\n", - "9 1.092898\n", - "10 1.108310\n", - "11 1.045226\n", - "12 1.017586\n", - "13 1.016472\n", - "14 0.959454\n", - "15 0.905421\n", - "16 0.892766\n", - "17 1.012050\n", - "18 0.986956\n", - "19 0.939274\n", - "20 0.897986\n", - "21 0.951897\n", - "22 0.915587\n", - "23 0.892494\n", - "24 0.872178\n", - "25 0.890993\n", - "26 0.869255\n", - "27 0.913538\n", - "28 0.895280\n", - "29 0.881116\n", - "30 0.869378\n", - "31 0.885790\n", - "32 0.918964\n", - "33 0.896527\n", - "34 0.875991\n", - "35 0.862191\n", - "36 0.873222\n", - "37 0.866254\n", - "38 0.875862\n", - "39 0.870861\n", - "40 0.862432\n", - "41 0.845923\n", - "42 0.834356\n", - "43 0.859186\n", - "44 0.840669\n", - "45 0.827552\n", - "46 0.831493\n", - "47 0.823895\n", - "48 0.813804\n", - "49 0.798139\n", - "50 0.788121\n", - "51 0.788299\n", - "52 0.863104\n", - "53 0.863704\n", - "54 0.900137\n", - "Name: effort, dtype: float64" - ] - }, - "execution_count": 30, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "block['effort'].expanding().mean()" ] diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb new file mode 100644 index 00000000..540633b0 --- /dev/null +++ b/testing_2_db.ipynb @@ -0,0 +1,198 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "96944386-e139-4ef4-9d86-26463244ff6f", + "metadata": {}, + "outputs": [], + "source": [ + "from utils.api_2_db import DataSyncer\n", + "import pandas as pd" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "11604c9d-4ef6-48da-939f-fac113478414", + "metadata": {}, + "outputs": [], + "source": [ + "db_sync = DataSyncer(config_path=\"../conf\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", + "metadata": {}, + "outputs": [], + "source": [ + "# db_sync.__delete_table__()\n", + "db_sync.__create_table__()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2736017b-7f7c-4f92-a8f0-9098dbcad123", + "metadata": {}, + "outputs": [], + "source": [ + "timenow = pd.Timestamp.now()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fedbaf9b-d0df-4450-8584-27b4b4d5dc5a", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "db_sync.update_block_data(timenow)\n", + "db_sync.db.fetch_data('block')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dde69db9-7336-4774-9332-ef4baf4d2517", + "metadata": {}, + "outputs": [], + "source": [ + "db_sync.update_pool_stats(timenow)\n", + "db_sync.db.fetch_data('stats')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e1de965a-d3e3-4e54-b7ab-a2c1e8f844da", + "metadata": {}, + "outputs": [], + "source": [ + "data = db_sync.db.fetch_data('stats')\n", + "data.columns" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0f3e5a43-8f1b-4e54-81aa-9c888881b82f", + "metadata": {}, + "outputs": [], + "source": [ + "data['fee'][0]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cd8c2c61-4ba2-4740-9f3f-667c501d365e", + "metadata": {}, + "outputs": [], + "source": [ + "db_sync.data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2ceade65-613b-413e-9c46-df3e12e15911", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "db_sync.update_miner_data(timenow)\n", + "db_sync.db.fetch_data('payment')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "45b50f14-4805-4b2f-ac90-baaa87b92ca4", + "metadata": {}, + "outputs": [], + "source": [ + "df = db_sync.db.fetch_data('live_worker')\n", + "aggregated_df = df.groupby('miner').agg({\n", + " 'hashrate': 'sum', # Sum of hashrate\n", + " 'shares_per_second': 'sum', # Sum of shares_per_second\n", + " 'worker': 'nunique', # Count of unique workers\n", + " # 'miner': 'miner' # Count of unique miners\n", + "})\n", + "aggregated_df\n", + "# aggregated_df.sort_values(['created'])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a48184cc-33de-4d81-834d-7861d2dd6e3c", + "metadata": {}, + "outputs": [], + "source": [ + "df = db_sync.db.fetch_data('performance')\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e86e1e78-c04a-4f1d-b95b-5963bc69e0c5", + "metadata": {}, + "outputs": [], + "source": [ + "aggregated_df = df.groupby('created').agg({\n", + " 'hashrate': 'sum', # Sum of hashrate\n", + " 'shares_per_second': 'sum', # Sum of shares_per_second\n", + " 'worker': 'nunique', # Count of unique workers\n", + " 'miner': 'nunique' # Count of unique miners\n", + "}).reset_index()\n", + "aggregated_df.sort_values(['created'])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c20f9edc-7c09-4167-98c3-4bb1086c80a7", + "metadata": {}, + "outputs": [], + "source": [ + "aggregated_df['created']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "efd84d1e-1548-4d60-8e7a-d273f2b02293", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/utils/api_2_db.py b/utils/api_2_db.py index 74efa8a6..ecc70e2a 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -6,6 +6,7 @@ from datetime import datetime from hydra.core.global_hydra import GlobalHydra import pytz +import pandas as pd from utils.db_util import PostgreSQLDatabase @@ -105,13 +106,21 @@ def get_api_data(self, api_url): print(f"An error occurred: {e}") return None - def __create_table_(self, table + def __create_table__(self): self.db.create_table('stats', self.stats_headers) self.db.create_table('block', self.block_headers) self.db.create_table('payment', self.payment_headers) self.db.create_table('live_worker', self.live_worker_headers) self.db.create_table('performance', self.performance_headers) - return + return True + + def __delete_table__(self): + self.db.delete_table('stats') + self.db.delete_table('block') + self.db.delete_table('payment') + self.db.delete_table('live_worker') + self.db.delete_table('performance') + return True def insert_df_rows(self, df, table): for index, row in df.iterrows(): @@ -122,10 +131,11 @@ def update_pool_stats(self, timenow): The purpose of this method is to grab all the relevant stats of the pool and network ''' stats = self.get_api_data(self.base_api)['pool'] + # last_block_found = str(format_datetime(stats['lastPoolBlockTime'])) last_block_found = stats['lastPoolBlockTime'] format_string = '%Y-%m-%dT%H:%M:%S.%fZ' date_time_obj = datetime.strptime(last_block_found, format_string) - last_block_found = date_time_obj.strftime('%A, %B %d, %Y at %I:%M:%S %p') + last_block_found = date_time_obj.strftime('%Y-%m-%d %H:%M:%S') self.data = {'fee': stats['poolFeePercent'], 'paid': stats['totalPaid'], @@ -149,6 +159,17 @@ def update_pool_stats(self, timenow): self.data['networkHashrate'] = self.data['networkHashrate'] / 1e12 # Terra Hash/Second self.data['networkDifficulty'] = self.data['networkDifficulty'] / 1e15 # Peta self.data['insert_time_stamp'] = timenow + self.data['poolEffort'] = self.calculate_mining_effort(self.data['networkDifficulty'], + self.data['networkHashrate'], + self.data['poolHashrate'] * 1e3, + last_block_found) + + self.data['poolTTF'] = self.calculate_time_to_find_block(self.data['networkDifficulty'], + self.data['networkHashrate'], + self.data['poolHashrate'] * 1e3) + + del self.data['payoutSchemeConfig'] + del self.data['extra'] self.db.insert_data('stats', self.data) @@ -160,10 +181,10 @@ def update_block_data(self, timenow): Will need to add Rolling Effort in the df in the page itself vs db ''' - url = '{}/{}'.format(reader.base_api, 'blocks?pageSize=10') - block_data = reader.get_api_data(url) + url = '{}/{}'.format(self.base_api, 'blocks?pageSize=5000') + block_data = self.get_api_data(url) for data in block_data: - data['rolling_effort'] = data['effort'].expanding().mean() + # data['rolling_effort'] = data['effort'].expanding().mean() data['time_found'] = format_datetime(data.pop('created')) data['confirmationProgress'] = data['confirmationProgress'] * 100 data['networkDifficulty'] = round(data['networkDifficulty'], 2) @@ -172,7 +193,6 @@ def update_block_data(self, timenow): data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:]) self.db.update_or_insert('block', data) - def update_miner_data(self, timenow): _, erg_price = self.price_reader.get() miner_data = self.get_api_data('{}/{}'.format(self.base_api, 'miners?pageSize=5000')) @@ -185,7 +205,7 @@ def update_miner_data(self, timenow): networkDifficulty = stats['networkdifficulty'][0] for miner in miner_ls: url = '{}/{}/{}'.format(self.base_api, 'miners', miner) - mining_data = reader.get_api_data(url) + mining_data = self.get_api_data(url) payment_data = {k: v for k, v in mining_data.items() if k not in ['performance', 'performanceSamples']} payment_data['Schema'] = 'PPLNS' @@ -205,7 +225,7 @@ def update_miner_data(self, timenow): performance_samples = mining_data.pop('performanceSamples') - payment_data['created_at'] = time_now + payment_data['created_at'] = timenow payment_data['miner'] = miner miner_blocks = block_data[block_data.miner == miner] @@ -232,18 +252,81 @@ def update_miner_data(self, timenow): live_df['last_block_found'] = last_block_found self.insert_df_rows(live_df, 'live_worker') - print('live worker inserted') except KeyError: live_df = pd.DataFrame() - print('no live data') + print('no live data for miner {}'.format(miner)) self.db.insert_data('payment', payment_data) - print('payments inserted') self.insert_df_rows(performance_df, 'performance') - print('performance inserted') - + return + + def calculate_mining_effort(self, network_difficulty, network_hashrate, hashrate, last_block_timestamp): + """ + Calculate the mining effort for the pool to find a block on Ergo blockchain based on the given timestamp. + + :param network_difficulty: The current difficulty of the Ergo network. + :param network_hashrate: The total hash rate of the Ergo network (in hashes per second). + :param pool_hashrate: The hash rate of the mining pool (in hashes per second). + :param last_block_timestamp: Timestamp of the last block found in ISO 8601 format. + :return: The estimated mining effort for the pool. + """ + + network_difficulty = network_difficulty * 1e15 + network_hashratev = network_hashrate * 1e12 + hashrate = hashrate * 1e6 + + # Parse the last block timestamp + time_format = '%Y-%m-%d %H:%M:%S' + last_block_time = datetime.strptime(last_block_timestamp, time_format) + last_block_time = last_block_time.replace(tzinfo=pytz.utc) # Assume the timestamp is in UTC + + # Get the current time in UTC + now = datetime.now(pytz.utc) + + # Calculate the time difference in seconds + time_since_last_block = (now - last_block_time).total_seconds() + + # Hashes to find a block at current difficulty + hashes_to_find_block = network_difficulty# This is a simplification + + # Total hashes by the network in the time since last block + total_network_hashes = network_hashrate * time_since_last_block + + # Pool's share of the total network hashes + pool_share_of_hashes = (hashrate / network_hashrate ) * total_network_hashes + + # Effort is the pool's share of hashes divided by the number of hashes to find a block + effort = pool_share_of_hashes / hashes_to_find_block * 100 + + return round(effort, 3) + + def calculate_time_to_find_block(self, network_difficulty, network_hashrate, hashrate): + """ + Calculate the time to find a block on Ergo blockchain based on the given timestamp. + + :param network_difficulty: The current difficulty of the Ergo network. + :param network_hashrate: The total hash rate of the Ergo network (in hashes per second). + :param pool_hashrate: The hash rate of the mining pool (in hashes per second). + :param last_block_timestamp: Timestamp of the last block found in ISO 8601 format. + :return: The estimated time to find a block for the pool. + """ + + network_difficulty = network_difficulty * 1e15 + network_hashrate = network_hashrate * 1e12 + hashrate = hashrate * 1e6 + + # Hashes to find a block at current difficulty + hashes_to_find_block = network_difficulty # This is a simplification + + # Calculate the time to find a block + try: + time_to_find_block = hashes_to_find_block / hashrate + except ZeroDivisionError: + time_to_find_block = 1 + + return round(time_to_find_block / 3600 / 24, 3) From ea32aae1b0700c9cc1038a101ac917d1c9ce7491 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Sun, 28 Apr 2024 00:36:51 -0600 Subject: [PATCH 05/16] adjust data table to pull latest data from the tabel and integrate with front page --- layouts/front_page.py | 26 +- testing_2_db.ipynb | 1563 ++++++++++++++++++++++++++++++++++++++++- 2 files changed, 1563 insertions(+), 26 deletions(-) diff --git a/layouts/front_page.py b/layouts/front_page.py index 7743fd58..d95cec14 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -91,12 +91,13 @@ def setup_front_page_callbacks(app, reader): def update_first_row(n): data = db_sync.db.fetch_data('stats') + data = data[data.insert_time_stamp == max(data.insert_time_stamp)] payment = db_sync.db.fetch_data('payment') # reader.update_data() # data = reader.data - ergo = payment['price'][0] # need to pull latest or move to data - n_miners = '{}'.format(data['connectedpeers'][0]) - hashrate = '{} GH/s'.format(data['poolhashrate'][0]) + ergo = payment['price'][0] # need to pull latest or move to data and not use the first index + n_miners = '{}'.format(data['connectedminers'].item()) + hashrate = '{} GH/s'.format(data['poolhashrate'].item()) row_1 = dbc.Row(justify='center', align='stretch', children=[create_row_card('assets/boltz.png', hashrate, 'Pool Hashrate'), @@ -113,29 +114,30 @@ def update_metrics(n): # reader.update_data() # data = reader.data data = db_sync.db.fetch_data('stats') # need to pull latest sample and grab values + data = data[data.insert_time_stamp == max(data.insert_time_stamp)] md = 4 row_2 = dbc.Row(children=[ dbc.Col(md=md, style={'padding': '10px'}, children=[ dbc.Card(style=bottom_row_style, children=[ - create_image_text_block('min-payout.png', 'Minimum Payout:', data['minimumpayment'][0]), - create_image_text_block('percentage.png', 'Pool Fee:', '{}%'.format(data['fee'][0])), - create_image_text_block('ergo.png', 'Total Paid:', '{} ERG'.format(round(data['paid'][0], 3))), + create_image_text_block('min-payout.png', 'Minimum Payout:', data['minimumpayment'].item()), + create_image_text_block('percentage.png', 'Pool Fee:', '{}%'.format(data['fee'].item())), + create_image_text_block('ergo.png', 'Total Paid:', '{} ERG'.format(round(data['paid'].item(), 3))), ]) ]), dbc.Col(md=md, style={'padding': '10px'}, children=[ dbc.Card(style=bottom_row_style, children=[ - create_image_text_block('bolt.png', 'Network Hashrate:', '{} TH/s'.format(round(data['networkhashrate'][0], 2))), - create_image_text_block('gauge.png', 'Network Difficulty:', '{}P'.format(round(data['networkdifficulty'][0], 2))), - create_image_text_block('height.png', 'Block Height:', data['blockheight'][0]), + create_image_text_block('bolt.png', 'Network Hashrate:', '{} TH/s'.format(round(data['networkhashrate'].item(), 2))), + create_image_text_block('gauge.png', 'Network Difficulty:', '{}P'.format(round(data['networkdifficulty'].item(), 2))), + create_image_text_block('height.png', 'Block Height:', data['blockheight'].item()), ]) ]), dbc.Col(md=md, style={'padding': '10px'}, children=[ dbc.Card(style=bottom_row_style, children=[ - create_image_text_block('triangle.png', 'Schema:', data['payoutscheme'][0]), - create_image_text_block('ergo.png', 'Blocks Found:', data['blocks'][0]), - create_image_text_block('ergo.png', 'Current Block Effort:', round(data['pooleffort'][0], 3)), + create_image_text_block('triangle.png', 'Schema:', data['payoutscheme'].item()), + create_image_text_block('ergo.png', 'Blocks Found:', data['blocks'].item()), + create_image_text_block('ergo.png', 'Current Block Effort:', round(data['pooleffort'].item(), 3)), ]) ])]) return [row_2] diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index 540633b0..3d81e6af 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "96944386-e139-4ef4-9d86-26463244ff6f", "metadata": {}, "outputs": [], @@ -13,7 +13,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "11604c9d-4ef6-48da-939f-fac113478414", "metadata": {}, "outputs": [], @@ -23,10 +23,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# db_sync.__delete_table__()\n", "db_sync.__create_table__()" @@ -34,7 +45,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "id": "2736017b-7f7c-4f92-a8f0-9098dbcad123", "metadata": {}, "outputs": [], @@ -44,12 +55,1233 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "fedbaf9b-d0df-4450-8584-27b4b4d5dc5a", "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1252559422881.66confirmed1000.0256dcc160776a8a7127.02https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hS...8ygPHErgoSigmanauts2024-04-28 03:06:52
1ErgoSigmanauts1252553422881.66confirmed1001.8650230ed620a8fa0b27.00https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3...ZGLDLErgoSigmanauts2024-04-28 02:55:03
2ErgoSigmanauts1251978380358.29confirmed1000.1150a300044822864227.00https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8...SKz8KErgoSigmanauts2024-04-27 07:59:45
3ErgoSigmanauts1251939366775.44confirmed1000.24502468dac362205227.02https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3...ZGLDLErgoSigmanauts2024-04-27 06:54:45
4ErgoSigmanauts1251871366775.44confirmed1001.0450d8fd9c81187de227.01https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fx...n2ewVErgoSigmanauts2024-04-27 04:31:16
5ErgoSigmanauts1251567388383.16confirmed1000.26555f000b343364e427.01https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4...iopyXErgoSigmanauts2024-04-26 18:24:58
6ErgoSigmanauts1251499388383.16confirmed1006.40507971cae2ee4a1827.00https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fH...HbNJxErgoSigmanauts2024-04-26 16:00:40
7ErgoSigmanauts1249527315887.25confirmed1000.3450164a42c64cc4f127.02https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fR...LUuxoErgoSigmanauts2024-04-23 22:19:10
8ErgoSigmanauts1249440315887.25confirmed1000.0250187b62b18da53527.01https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3...YsAikErgoSigmanauts2024-04-23 19:17:03
9ErgoSigmanauts1249432315887.25confirmed1000.645057d49b44b4ed2127.01https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZ...FsakQErgoSigmanauts2024-04-23 19:06:49
10ErgoSigmanauts1249230361687.60confirmed1001.261bdb3e4628f615be27.01https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9gg...emSuTErgoSigmanauts2024-04-23 12:18:50
11ErgoSigmanauts1248838426627.60confirmed1000.35186e549eb8340f1227.03https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJ...j8zdCErgoSigmanauts2024-04-22 22:07:16
12ErgoSigmanauts1248716402639.91confirmed1000.691c96000783680ce227.01https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5...ceKR9ErgoSigmanauts2024-04-22 18:11:34
13ErgoSigmanauts1248443380709.27confirmed1001.00188b8a2690b7756927.01https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3...YsAikErgoSigmanauts2024-04-22 09:12:21
14ErgoSigmanauts1248031396231.07confirmed1000.161c1800034e77b16627.00https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6...YYYAbErgoSigmanauts2024-04-21 18:58:55
15ErgoSigmanauts1247949334193.98confirmed1000.091bf4a728749d7de827.00https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4...iopyXErgoSigmanauts2024-04-21 16:57:09
16ErgoSigmanauts1247906334193.98confirmed1000.691a16000df545608327.03https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9eh...ApYkkErgoSigmanauts2024-04-21 15:49:03
17ErgoSigmanauts1247634390680.08confirmed1003.041a1329402f2206ed27.07https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9eh...ApYkkErgoSigmanauts2024-04-21 05:49:18
18ErgoSigmanauts1246555371421.35confirmed1000.5412fc6a2219199f2a27.01https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4...iopyXErgoSigmanauts2024-04-19 17:13:40
19ErgoSigmanauts1246329338457.84confirmed1000.031642835a069e4fb927.03https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6...YYYAbErgoSigmanauts2024-04-19 10:06:26
20ErgoSigmanauts1246316338457.84confirmed1000.07146857274f45ac2c27.18https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fH...HbNJxErgoSigmanauts2024-04-19 09:41:15
21ErgoSigmanauts1246282338457.84confirmed1002.08164237aca8296f1c27.01https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6...YYYAbErgoSigmanauts2024-04-19 08:45:52
22ErgoSigmanauts1245573345942.82confirmed1000.1212a8cc865d1eb6b127.00https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gX...w5YtoErgoSigmanauts2024-04-18 09:31:37
23ErgoSigmanauts1245528323130.13confirmed1000.36126a0007f2a34c7c27.00https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9eh...ApYkkErgoSigmanauts2024-04-18 08:01:31
24ErgoSigmanauts1245375343213.85confirmed1000.38126b001c1226e66627.00https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9eh...ApYkkErgoSigmanauts2024-04-18 03:11:44
25ErgoSigmanauts1245219385248.18confirmed1001.36123200132a4f005327.00https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8...SKz8KErgoSigmanauts2024-04-17 21:39:45
26ErgoSigmanauts1244611350337.67confirmed1000.3013309b8b1531ac3d27.00https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gw...XhqysErgoSigmanauts2024-04-17 01:03:11
27ErgoSigmanauts1244487347763.78confirmed1002.11126b0037bf192dd927.00https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9eh...ApYkkErgoSigmanauts2024-04-16 20:53:07
28ErgoSigmanauts1243556346496.76confirmed1000.38121c61dad76dde6427.00https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4...iopyXErgoSigmanauts2024-04-15 13:26:36
29ErgoSigmanauts1243309317174.21confirmed1000.471232000391a2d9da27.01https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8...SKz8KErgoSigmanauts2024-04-15 05:58:59
30ErgoSigmanauts1243018353518.61confirmed1000.52124d61659aa64c7a27.08https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJ...j8zdCErgoSigmanauts2024-04-14 19:46:29
31ErgoSigmanauts1242682379295.33confirmed1001.3912200009ea03884927.02https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8...SKz8KErgoSigmanauts2024-04-14 07:53:57
32ErgoSigmanauts1241796370202.41confirmed1001.9810c71b4fad01f31c27.05https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9ex...WFksxErgoSigmanauts2024-04-13 01:40:15
33ErgoSigmanauts1240237406987.88confirmed1000.16100fe6c78281bfae27.13https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3...ZGLDLErgoSigmanauts2024-04-10 21:52:48
34ErgoSigmanauts1240101411836.85confirmed1000.1810da0014d0866a1a27.01https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7...MxEbMErgoSigmanauts2024-04-10 16:45:58
35ErgoSigmanauts1239922414752.68confirmed1000.3810111463352887a327.00https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3...ZGLDLErgoSigmanauts2024-04-10 11:38:14
36ErgoSigmanauts1239612395105.08confirmed1001.2710c7e206ff3da33e27.03https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9ex...WFksxErgoSigmanauts2024-04-09 23:57:08
37ErgoSigmanauts1238592386279.12confirmed1000.6110c72dc2ea84ee3e27.00https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9ex...WFksxErgoSigmanauts2024-04-08 14:35:09
38ErgoSigmanauts1238040399941.96confirmed1001.24101010806c3bfec230.00https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZ...zb9tDErgoSigmanauts2024-04-07 19:55:43
39ErgoSigmanauts1236735385434.15confirmed1000.68100d40c8c30375f930.03https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4...iopyXErgoSigmanauts2024-04-06 00:11:43
40ErgoSigmanauts1235990387916.17confirmed1000.5320058216259db39230.01https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT...fgbTVErgoSigmanauts2024-04-04 23:46:44
41ErgoSigmanauts1235365466883.93confirmed1000.17d0db3663848642f530.07https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3...ZGLDLErgoSigmanauts2024-04-04 01:40:19
42ErgoSigmanauts1235136433886.50confirmed1000.35d4481db8a168230330.01https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4...iopyXErgoSigmanauts2024-04-03 18:22:18
43ErgoSigmanauts1234733425282.54confirmed1001.93d43cfb8db6bde05730.01https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gX...w5YtoErgoSigmanauts2024-04-03 04:57:28
44ErgoSigmanauts1232662385380.25confirmed1000.03d88e000ab46f7e8a30.00https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9eh...ApYkkErgoSigmanauts2024-03-31 07:40:29
45ErgoSigmanauts1232628363957.50confirmed1000.24d10ffd6af9eca40630.00https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4...iopyXErgoSigmanauts2024-03-31 06:53:18
46ErgoSigmanauts1232487360630.58confirmed1001.01dee5be1bf40de25e30.01https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT...fgbTVErgoSigmanauts2024-03-31 02:11:27
47ErgoSigmanauts1231651367785.41confirmed1000.47daa5cc820eedd3d930.00https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9eh...ApYkkErgoSigmanauts2024-03-29 22:22:38
48ErgoSigmanauts1231144405099.84confirmed1000.33d88f00142c1483c130.00https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9eh...ApYkkErgoSigmanauts2024-03-29 04:26:22
49ErgoSigmanauts1230782360986.50confirmed1000.03d00cd5ba5f2b167c30.09https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gX...w5YtoErgoSigmanauts2024-03-28 16:41:02
50ErgoSigmanauts1230749360986.50confirmed1000.29d8a48cee009b608c30.01https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gw...XhqysErgoSigmanauts2024-03-28 15:40:37
51ErgoSigmanauts1230547434381.38confirmed1000.80d6c1191549ab2f0730.03https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fY...4HpcPErgoSigmanauts2024-03-28 08:26:49
52ErgoSigmanauts1230104347635.80confirmed1004.75d153e8105c7c0b5730.00https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fY...4HpcPErgoSigmanauts2024-03-27 18:07:25
53ErgoSigmanauts1223980416310.69confirmed1000.90300b000932aead3a30.01https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8...SKz8KErgoSigmanauts2024-03-19 04:19:20
54ErgoSigmanauts1221911421209.62confirmed1002.87705c89a6a4e552cf30.01https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQ...bL3fJErgoSigmanauts2024-03-16 06:45:27
\n", + "
" + ], + "text/plain": [ + " poolid blockheight networkdifficulty status \\\n", + "0 ErgoSigmanauts 1252559 422881.66 confirmed \n", + "1 ErgoSigmanauts 1252553 422881.66 confirmed \n", + "2 ErgoSigmanauts 1251978 380358.29 confirmed \n", + "3 ErgoSigmanauts 1251939 366775.44 confirmed \n", + "4 ErgoSigmanauts 1251871 366775.44 confirmed \n", + "5 ErgoSigmanauts 1251567 388383.16 confirmed \n", + "6 ErgoSigmanauts 1251499 388383.16 confirmed \n", + "7 ErgoSigmanauts 1249527 315887.25 confirmed \n", + "8 ErgoSigmanauts 1249440 315887.25 confirmed \n", + "9 ErgoSigmanauts 1249432 315887.25 confirmed \n", + "10 ErgoSigmanauts 1249230 361687.60 confirmed \n", + "11 ErgoSigmanauts 1248838 426627.60 confirmed \n", + "12 ErgoSigmanauts 1248716 402639.91 confirmed \n", + "13 ErgoSigmanauts 1248443 380709.27 confirmed \n", + "14 ErgoSigmanauts 1248031 396231.07 confirmed \n", + "15 ErgoSigmanauts 1247949 334193.98 confirmed \n", + "16 ErgoSigmanauts 1247906 334193.98 confirmed \n", + "17 ErgoSigmanauts 1247634 390680.08 confirmed \n", + "18 ErgoSigmanauts 1246555 371421.35 confirmed \n", + "19 ErgoSigmanauts 1246329 338457.84 confirmed \n", + "20 ErgoSigmanauts 1246316 338457.84 confirmed \n", + "21 ErgoSigmanauts 1246282 338457.84 confirmed \n", + "22 ErgoSigmanauts 1245573 345942.82 confirmed \n", + "23 ErgoSigmanauts 1245528 323130.13 confirmed \n", + "24 ErgoSigmanauts 1245375 343213.85 confirmed \n", + "25 ErgoSigmanauts 1245219 385248.18 confirmed \n", + "26 ErgoSigmanauts 1244611 350337.67 confirmed \n", + "27 ErgoSigmanauts 1244487 347763.78 confirmed \n", + "28 ErgoSigmanauts 1243556 346496.76 confirmed \n", + "29 ErgoSigmanauts 1243309 317174.21 confirmed \n", + "30 ErgoSigmanauts 1243018 353518.61 confirmed \n", + "31 ErgoSigmanauts 1242682 379295.33 confirmed \n", + "32 ErgoSigmanauts 1241796 370202.41 confirmed \n", + "33 ErgoSigmanauts 1240237 406987.88 confirmed \n", + "34 ErgoSigmanauts 1240101 411836.85 confirmed \n", + "35 ErgoSigmanauts 1239922 414752.68 confirmed \n", + "36 ErgoSigmanauts 1239612 395105.08 confirmed \n", + "37 ErgoSigmanauts 1238592 386279.12 confirmed \n", + "38 ErgoSigmanauts 1238040 399941.96 confirmed \n", + "39 ErgoSigmanauts 1236735 385434.15 confirmed \n", + "40 ErgoSigmanauts 1235990 387916.17 confirmed \n", + "41 ErgoSigmanauts 1235365 466883.93 confirmed \n", + "42 ErgoSigmanauts 1235136 433886.50 confirmed \n", + "43 ErgoSigmanauts 1234733 425282.54 confirmed \n", + "44 ErgoSigmanauts 1232662 385380.25 confirmed \n", + "45 ErgoSigmanauts 1232628 363957.50 confirmed \n", + "46 ErgoSigmanauts 1232487 360630.58 confirmed \n", + "47 ErgoSigmanauts 1231651 367785.41 confirmed \n", + "48 ErgoSigmanauts 1231144 405099.84 confirmed \n", + "49 ErgoSigmanauts 1230782 360986.50 confirmed \n", + "50 ErgoSigmanauts 1230749 360986.50 confirmed \n", + "51 ErgoSigmanauts 1230547 434381.38 confirmed \n", + "52 ErgoSigmanauts 1230104 347635.80 confirmed \n", + "53 ErgoSigmanauts 1223980 416310.69 confirmed \n", + "54 ErgoSigmanauts 1221911 421209.62 confirmed \n", + "\n", + " confirmationprogress effort transactionconfirmationdata reward \\\n", + "0 100 0.02 56dcc160776a8a71 27.02 \n", + "1 100 1.86 50230ed620a8fa0b 27.00 \n", + "2 100 0.11 50a3000448228642 27.00 \n", + "3 100 0.24 502468dac3622052 27.02 \n", + "4 100 1.04 50d8fd9c81187de2 27.01 \n", + "5 100 0.26 555f000b343364e4 27.01 \n", + "6 100 6.40 507971cae2ee4a18 27.00 \n", + "7 100 0.34 50164a42c64cc4f1 27.02 \n", + "8 100 0.02 50187b62b18da535 27.01 \n", + "9 100 0.64 5057d49b44b4ed21 27.01 \n", + "10 100 1.26 1bdb3e4628f615be 27.01 \n", + "11 100 0.35 186e549eb8340f12 27.03 \n", + "12 100 0.69 1c96000783680ce2 27.01 \n", + "13 100 1.00 188b8a2690b77569 27.01 \n", + "14 100 0.16 1c1800034e77b166 27.00 \n", + "15 100 0.09 1bf4a728749d7de8 27.00 \n", + "16 100 0.69 1a16000df5456083 27.03 \n", + "17 100 3.04 1a1329402f2206ed 27.07 \n", + "18 100 0.54 12fc6a2219199f2a 27.01 \n", + "19 100 0.03 1642835a069e4fb9 27.03 \n", + "20 100 0.07 146857274f45ac2c 27.18 \n", + "21 100 2.08 164237aca8296f1c 27.01 \n", + "22 100 0.12 12a8cc865d1eb6b1 27.00 \n", + "23 100 0.36 126a0007f2a34c7c 27.00 \n", + "24 100 0.38 126b001c1226e666 27.00 \n", + "25 100 1.36 123200132a4f0053 27.00 \n", + "26 100 0.30 13309b8b1531ac3d 27.00 \n", + "27 100 2.11 126b0037bf192dd9 27.00 \n", + "28 100 0.38 121c61dad76dde64 27.00 \n", + "29 100 0.47 1232000391a2d9da 27.01 \n", + "30 100 0.52 124d61659aa64c7a 27.08 \n", + "31 100 1.39 12200009ea038849 27.02 \n", + "32 100 1.98 10c71b4fad01f31c 27.05 \n", + "33 100 0.16 100fe6c78281bfae 27.13 \n", + "34 100 0.18 10da0014d0866a1a 27.01 \n", + "35 100 0.38 10111463352887a3 27.00 \n", + "36 100 1.27 10c7e206ff3da33e 27.03 \n", + "37 100 0.61 10c72dc2ea84ee3e 27.00 \n", + "38 100 1.24 101010806c3bfec2 30.00 \n", + "39 100 0.68 100d40c8c30375f9 30.03 \n", + "40 100 0.53 20058216259db392 30.01 \n", + "41 100 0.17 d0db3663848642f5 30.07 \n", + "42 100 0.35 d4481db8a1682303 30.01 \n", + "43 100 1.93 d43cfb8db6bde057 30.01 \n", + "44 100 0.03 d88e000ab46f7e8a 30.00 \n", + "45 100 0.24 d10ffd6af9eca406 30.00 \n", + "46 100 1.01 dee5be1bf40de25e 30.01 \n", + "47 100 0.47 daa5cc820eedd3d9 30.00 \n", + "48 100 0.33 d88f00142c1483c1 30.00 \n", + "49 100 0.03 d00cd5ba5f2b167c 30.09 \n", + "50 100 0.29 d8a48cee009b608c 30.01 \n", + "51 100 0.80 d6c1191549ab2f07 30.03 \n", + "52 100 4.75 d153e8105c7c0b57 30.00 \n", + "53 100 0.90 300b000932aead3a 30.01 \n", + "54 100 2.87 705c89a6a4e552cf 30.01 \n", + "\n", + " infolink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "2 https://explorer.ergoplatform.com/en/blocks/58... \n", + "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "8 https://explorer.ergoplatform.com/en/blocks/22... \n", + "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "11 https://explorer.ergoplatform.com/en/blocks/17... \n", + "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "14 https://explorer.ergoplatform.com/en/blocks/92... \n", + "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "18 https://explorer.ergoplatform.com/en/blocks/40... \n", + "19 https://explorer.ergoplatform.com/en/blocks/32... \n", + "20 https://explorer.ergoplatform.com/en/blocks/02... \n", + "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "25 https://explorer.ergoplatform.com/en/blocks/32... \n", + "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "27 https://explorer.ergoplatform.com/en/blocks/79... \n", + "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "32 https://explorer.ergoplatform.com/en/blocks/39... \n", + "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "34 https://explorer.ergoplatform.com/en/blocks/10... \n", + "35 https://explorer.ergoplatform.com/en/blocks/db... \n", + "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "37 https://explorer.ergoplatform.com/en/blocks/91... \n", + "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "41 https://explorer.ergoplatform.com/en/blocks/00... \n", + "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "43 https://explorer.ergoplatform.com/en/blocks/85... \n", + "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "45 https://explorer.ergoplatform.com/en/blocks/48... \n", + "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "47 https://explorer.ergoplatform.com/en/blocks/20... \n", + "48 https://explorer.ergoplatform.com/en/blocks/27... \n", + "49 https://explorer.ergoplatform.com/en/blocks/33... \n", + "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "53 https://explorer.ergoplatform.com/en/blocks/83... \n", + "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "\n", + " hash miner \\\n", + "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... 9hS...8ygPH \n", + "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... 9i3...ZGLDL \n", + "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... 9i8...SKz8K \n", + "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... 9i3...ZGLDL \n", + "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... 9fx...n2ewV \n", + "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... 9g4...iopyX \n", + "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... 9fH...HbNJx \n", + "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... 9fR...LUuxo \n", + "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... 9f3...YsAik \n", + "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... 9eZ...FsakQ \n", + "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... 9gg...emSuT \n", + "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... 9iJ...j8zdC \n", + "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... 9f5...ceKR9 \n", + "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... 9f3...YsAik \n", + "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... 9h6...YYYAb \n", + "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... 9g4...iopyX \n", + "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... 9eh...ApYkk \n", + "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... 9eh...ApYkk \n", + "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... 9g4...iopyX \n", + "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... 9h6...YYYAb \n", + "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... 9fH...HbNJx \n", + "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... 9h6...YYYAb \n", + "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... 9gX...w5Yto \n", + "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... 9eh...ApYkk \n", + "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... 9eh...ApYkk \n", + "25 32df796eeeeb916349df58e3263011fc13e2064202638d... 9i8...SKz8K \n", + "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... 9gw...Xhqys \n", + "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... 9eh...ApYkk \n", + "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... 9g4...iopyX \n", + "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... 9i8...SKz8K \n", + "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... 9iJ...j8zdC \n", + "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... 9i8...SKz8K \n", + "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... 9ex...WFksx \n", + "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... 9i3...ZGLDL \n", + "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... 9f7...MxEbM \n", + "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... 9i3...ZGLDL \n", + "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... 9ex...WFksx \n", + "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... 9ex...WFksx \n", + "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... 9eZ...zb9tD \n", + "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... 9g4...iopyX \n", + "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... 9hT...fgbTV \n", + "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... 9i3...ZGLDL \n", + "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... 9g4...iopyX \n", + "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... 9gX...w5Yto \n", + "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... 9eh...ApYkk \n", + "45 48044bb6835294495eb17744326b63f3183a629ab44767... 9g4...iopyX \n", + "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... 9hT...fgbTV \n", + "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... 9eh...ApYkk \n", + "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... 9eh...ApYkk \n", + "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... 9gX...w5Yto \n", + "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... 9gw...Xhqys \n", + "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... 9fY...4HpcP \n", + "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... 9fY...4HpcP \n", + "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... 9i8...SKz8K \n", + "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... 9iQ...bL3fJ \n", + "\n", + " source time_found \n", + "0 ErgoSigmanauts 2024-04-28 03:06:52 \n", + "1 ErgoSigmanauts 2024-04-28 02:55:03 \n", + "2 ErgoSigmanauts 2024-04-27 07:59:45 \n", + "3 ErgoSigmanauts 2024-04-27 06:54:45 \n", + "4 ErgoSigmanauts 2024-04-27 04:31:16 \n", + "5 ErgoSigmanauts 2024-04-26 18:24:58 \n", + "6 ErgoSigmanauts 2024-04-26 16:00:40 \n", + "7 ErgoSigmanauts 2024-04-23 22:19:10 \n", + "8 ErgoSigmanauts 2024-04-23 19:17:03 \n", + "9 ErgoSigmanauts 2024-04-23 19:06:49 \n", + "10 ErgoSigmanauts 2024-04-23 12:18:50 \n", + "11 ErgoSigmanauts 2024-04-22 22:07:16 \n", + "12 ErgoSigmanauts 2024-04-22 18:11:34 \n", + "13 ErgoSigmanauts 2024-04-22 09:12:21 \n", + "14 ErgoSigmanauts 2024-04-21 18:58:55 \n", + "15 ErgoSigmanauts 2024-04-21 16:57:09 \n", + "16 ErgoSigmanauts 2024-04-21 15:49:03 \n", + "17 ErgoSigmanauts 2024-04-21 05:49:18 \n", + "18 ErgoSigmanauts 2024-04-19 17:13:40 \n", + "19 ErgoSigmanauts 2024-04-19 10:06:26 \n", + "20 ErgoSigmanauts 2024-04-19 09:41:15 \n", + "21 ErgoSigmanauts 2024-04-19 08:45:52 \n", + "22 ErgoSigmanauts 2024-04-18 09:31:37 \n", + "23 ErgoSigmanauts 2024-04-18 08:01:31 \n", + "24 ErgoSigmanauts 2024-04-18 03:11:44 \n", + "25 ErgoSigmanauts 2024-04-17 21:39:45 \n", + "26 ErgoSigmanauts 2024-04-17 01:03:11 \n", + "27 ErgoSigmanauts 2024-04-16 20:53:07 \n", + "28 ErgoSigmanauts 2024-04-15 13:26:36 \n", + "29 ErgoSigmanauts 2024-04-15 05:58:59 \n", + "30 ErgoSigmanauts 2024-04-14 19:46:29 \n", + "31 ErgoSigmanauts 2024-04-14 07:53:57 \n", + "32 ErgoSigmanauts 2024-04-13 01:40:15 \n", + "33 ErgoSigmanauts 2024-04-10 21:52:48 \n", + "34 ErgoSigmanauts 2024-04-10 16:45:58 \n", + "35 ErgoSigmanauts 2024-04-10 11:38:14 \n", + "36 ErgoSigmanauts 2024-04-09 23:57:08 \n", + "37 ErgoSigmanauts 2024-04-08 14:35:09 \n", + "38 ErgoSigmanauts 2024-04-07 19:55:43 \n", + "39 ErgoSigmanauts 2024-04-06 00:11:43 \n", + "40 ErgoSigmanauts 2024-04-04 23:46:44 \n", + "41 ErgoSigmanauts 2024-04-04 01:40:19 \n", + "42 ErgoSigmanauts 2024-04-03 18:22:18 \n", + "43 ErgoSigmanauts 2024-04-03 04:57:28 \n", + "44 ErgoSigmanauts 2024-03-31 07:40:29 \n", + "45 ErgoSigmanauts 2024-03-31 06:53:18 \n", + "46 ErgoSigmanauts 2024-03-31 02:11:27 \n", + "47 ErgoSigmanauts 2024-03-29 22:22:38 \n", + "48 ErgoSigmanauts 2024-03-29 04:26:22 \n", + "49 ErgoSigmanauts 2024-03-28 16:41:02 \n", + "50 ErgoSigmanauts 2024-03-28 15:40:37 \n", + "51 ErgoSigmanauts 2024-03-28 08:26:49 \n", + "52 ErgoSigmanauts 2024-03-27 18:07:25 \n", + "53 ErgoSigmanauts 2024-03-19 04:19:20 \n", + "54 ErgoSigmanauts 2024-03-16 06:45:27 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.update_block_data(timenow)\n", "db_sync.db.fetch_data('block')" @@ -57,10 +1289,270 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "dde69db9-7336-4774-9332-ef4baf4d2517", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
feepaidblockslast_block_foundenabledminimumpaymentpayoutschemeconnectedminerspoolhashratesharespersecondnetworktypenetworkhashratenetworkdifficultylastnetworkblocktimeblockheightconnectedpeersrewardtypepooleffortpoolttfinsert_time_stamp
00.91505.063062552024-04-28 03:06:52True0.5PPLNS3553.494.0mainnet14.1876011.7025122024-04-28 05:44:13.7061391252636117POW30.0450.3682024-04-27 23:46:14.045126
10.91505.063062552024-04-28 03:06:52True0.5PPLNS3551.754.0mainnet14.1876011.7025122024-04-28 06:19:50.4412401252649117POW35.2030.3812024-04-28 00:19:52.703999
20.91505.063062552024-04-28 03:06:52True0.5PPLNS3549.594.0mainnet14.1876011.7025122024-04-28 06:20:30.9286611252651117POW33.8910.3972024-04-28 00:20:46.616987
30.91505.063062552024-04-28 03:06:52True0.5PPLNS3549.594.0mainnet14.1876011.7025122024-04-28 06:20:30.9286611252651117POW34.0850.3972024-04-28 00:21:53.515139
40.91505.063062552024-04-28 03:06:52True0.5PPLNS3550.034.0mainnet14.1876011.7025122024-04-28 06:23:15.2422871252652118POW34.6270.3942024-04-28 00:23:15.019256
50.91505.063062552024-04-28 03:06:52True0.5PPLNS3549.884.0mainnet14.1876011.7025122024-04-28 06:26:17.5958621252655118POW35.4450.3952024-04-28 00:28:29.354552
60.91505.063062552024-04-28 03:06:52True0.5PPLNS3551.134.0mainnet14.1876011.7025122024-04-28 06:32:08.5536981252658117POW37.5620.3852024-04-28 00:35:18.670247
\n", + "
" + ], + "text/plain": [ + " fee paid blocks last_block_found enabled minimumpayment \\\n", + "0 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "1 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "2 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "3 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "4 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "5 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "6 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "\n", + " payoutscheme connectedminers poolhashrate sharespersecond networktype \\\n", + "0 PPLNS 35 53.49 4.0 mainnet \n", + "1 PPLNS 35 51.75 4.0 mainnet \n", + "2 PPLNS 35 49.59 4.0 mainnet \n", + "3 PPLNS 35 49.59 4.0 mainnet \n", + "4 PPLNS 35 50.03 4.0 mainnet \n", + "5 PPLNS 35 49.88 4.0 mainnet \n", + "6 PPLNS 35 51.13 4.0 mainnet \n", + "\n", + " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", + "0 14.187601 1.702512 2024-04-28 05:44:13.706139 1252636 \n", + "1 14.187601 1.702512 2024-04-28 06:19:50.441240 1252649 \n", + "2 14.187601 1.702512 2024-04-28 06:20:30.928661 1252651 \n", + "3 14.187601 1.702512 2024-04-28 06:20:30.928661 1252651 \n", + "4 14.187601 1.702512 2024-04-28 06:23:15.242287 1252652 \n", + "5 14.187601 1.702512 2024-04-28 06:26:17.595862 1252655 \n", + "6 14.187601 1.702512 2024-04-28 06:32:08.553698 1252658 \n", + "\n", + " connectedpeers rewardtype pooleffort poolttf insert_time_stamp \n", + "0 117 POW 30.045 0.368 2024-04-27 23:46:14.045126 \n", + "1 117 POW 35.203 0.381 2024-04-28 00:19:52.703999 \n", + "2 117 POW 33.891 0.397 2024-04-28 00:20:46.616987 \n", + "3 117 POW 34.085 0.397 2024-04-28 00:21:53.515139 \n", + "4 118 POW 34.627 0.394 2024-04-28 00:23:15.019256 \n", + "5 118 POW 35.445 0.395 2024-04-28 00:28:29.354552 \n", + "6 117 POW 37.562 0.385 2024-04-28 00:35:18.670247 " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.update_pool_stats(timenow)\n", "db_sync.db.fetch_data('stats')" @@ -68,21 +1560,64 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "id": "e1de965a-d3e3-4e54-b7ab-a2c1e8f844da", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/plain": [ + "0.9" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "data = db_sync.db.fetch_data('stats')\n", - "data.columns" + "data = data[data.insert_time_stamp == max(data.insert_time_stamp)]\n", + "data['fee'].item()" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "0f3e5a43-8f1b-4e54-81aa-9c888881b82f", "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "KeyError", + "evalue": "0", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/indexes/base.py:3805\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3804\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 3805\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_engine\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcasted_key\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 3806\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n", + "File \u001b[0;32mindex.pyx:167\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mindex.pyx:196\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:2606\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.Int64HashTable.get_item\u001b[0;34m()\u001b[0m\n", + "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:2630\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.Int64HashTable.get_item\u001b[0;34m()\u001b[0m\n", + "\u001b[0;31mKeyError\u001b[0m: 0", + "\nThe above exception was the direct cause of the following exception:\n", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[8], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mdata\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mfee\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m]\u001b[49m\n", + "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/series.py:1121\u001b[0m, in \u001b[0;36mSeries.__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 1118\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_values[key]\n\u001b[1;32m 1120\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m key_is_scalar:\n\u001b[0;32m-> 1121\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_value\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1123\u001b[0m \u001b[38;5;66;03m# Convert generator to list before going through hashable part\u001b[39;00m\n\u001b[1;32m 1124\u001b[0m \u001b[38;5;66;03m# (We will iterate through the generator there to check for slices)\u001b[39;00m\n\u001b[1;32m 1125\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_iterator(key):\n", + "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/series.py:1237\u001b[0m, in \u001b[0;36mSeries._get_value\u001b[0;34m(self, label, takeable)\u001b[0m\n\u001b[1;32m 1234\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_values[label]\n\u001b[1;32m 1236\u001b[0m \u001b[38;5;66;03m# Similar to Index.get_value, but we do not fall back to positional\u001b[39;00m\n\u001b[0;32m-> 1237\u001b[0m loc \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mindex\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mlabel\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1239\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(loc):\n\u001b[1;32m 1240\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_values[loc]\n", + "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/indexes/base.py:3812\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3807\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(casted_key, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;129;01mor\u001b[39;00m (\n\u001b[1;32m 3808\u001b[0m \u001b[38;5;28misinstance\u001b[39m(casted_key, abc\u001b[38;5;241m.\u001b[39mIterable)\n\u001b[1;32m 3809\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28many\u001b[39m(\u001b[38;5;28misinstance\u001b[39m(x, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m casted_key)\n\u001b[1;32m 3810\u001b[0m ):\n\u001b[1;32m 3811\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m InvalidIndexError(key)\n\u001b[0;32m-> 3812\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01merr\u001b[39;00m\n\u001b[1;32m 3813\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m:\n\u001b[1;32m 3814\u001b[0m \u001b[38;5;66;03m# If we have a listlike key, _check_indexing_error will raise\u001b[39;00m\n\u001b[1;32m 3815\u001b[0m \u001b[38;5;66;03m# InvalidIndexError. Otherwise we fall through and re-raise\u001b[39;00m\n\u001b[1;32m 3816\u001b[0m \u001b[38;5;66;03m# the TypeError.\u001b[39;00m\n\u001b[1;32m 3817\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_check_indexing_error(key)\n", + "\u001b[0;31mKeyError\u001b[0m: 0" + ] + } + ], "source": [ "data['fee'][0]" ] From 7046508c90b45b302f22a5b0b9bd3057ca34fe32 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Sun, 28 Apr 2024 00:37:22 -0600 Subject: [PATCH 06/16] minor adjustment to notebook --- testing_2_db.ipynb | 33 --------------------------------- 1 file changed, 33 deletions(-) diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index 3d81e6af..9c5ace3c 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -1589,39 +1589,6 @@ "data['fee'].item()" ] }, - { - "cell_type": "code", - "execution_count": 8, - "id": "0f3e5a43-8f1b-4e54-81aa-9c888881b82f", - "metadata": {}, - "outputs": [ - { - "ename": "KeyError", - "evalue": "0", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", - "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/indexes/base.py:3805\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3804\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 3805\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_engine\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcasted_key\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 3806\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n", - "File \u001b[0;32mindex.pyx:167\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", - "File \u001b[0;32mindex.pyx:196\u001b[0m, in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n", - "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:2606\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.Int64HashTable.get_item\u001b[0;34m()\u001b[0m\n", - "File \u001b[0;32mpandas/_libs/hashtable_class_helper.pxi:2630\u001b[0m, in \u001b[0;36mpandas._libs.hashtable.Int64HashTable.get_item\u001b[0;34m()\u001b[0m\n", - "\u001b[0;31mKeyError\u001b[0m: 0", - "\nThe above exception was the direct cause of the following exception:\n", - "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[0;32mIn[8], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m \u001b[43mdata\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mfee\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m]\u001b[49m\n", - "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/series.py:1121\u001b[0m, in \u001b[0;36mSeries.__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 1118\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_values[key]\n\u001b[1;32m 1120\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m key_is_scalar:\n\u001b[0;32m-> 1121\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_value\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1123\u001b[0m \u001b[38;5;66;03m# Convert generator to list before going through hashable part\u001b[39;00m\n\u001b[1;32m 1124\u001b[0m \u001b[38;5;66;03m# (We will iterate through the generator there to check for slices)\u001b[39;00m\n\u001b[1;32m 1125\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_iterator(key):\n", - "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/series.py:1237\u001b[0m, in \u001b[0;36mSeries._get_value\u001b[0;34m(self, label, takeable)\u001b[0m\n\u001b[1;32m 1234\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_values[label]\n\u001b[1;32m 1236\u001b[0m \u001b[38;5;66;03m# Similar to Index.get_value, but we do not fall back to positional\u001b[39;00m\n\u001b[0;32m-> 1237\u001b[0m loc \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mindex\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_loc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mlabel\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1239\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(loc):\n\u001b[1;32m 1240\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_values[loc]\n", - "File \u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/indexes/base.py:3812\u001b[0m, in \u001b[0;36mIndex.get_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 3807\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(casted_key, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;129;01mor\u001b[39;00m (\n\u001b[1;32m 3808\u001b[0m \u001b[38;5;28misinstance\u001b[39m(casted_key, abc\u001b[38;5;241m.\u001b[39mIterable)\n\u001b[1;32m 3809\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28many\u001b[39m(\u001b[38;5;28misinstance\u001b[39m(x, \u001b[38;5;28mslice\u001b[39m) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m casted_key)\n\u001b[1;32m 3810\u001b[0m ):\n\u001b[1;32m 3811\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m InvalidIndexError(key)\n\u001b[0;32m-> 3812\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mKeyError\u001b[39;00m(key) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01merr\u001b[39;00m\n\u001b[1;32m 3813\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mTypeError\u001b[39;00m:\n\u001b[1;32m 3814\u001b[0m \u001b[38;5;66;03m# If we have a listlike key, _check_indexing_error will raise\u001b[39;00m\n\u001b[1;32m 3815\u001b[0m \u001b[38;5;66;03m# InvalidIndexError. Otherwise we fall through and re-raise\u001b[39;00m\n\u001b[1;32m 3816\u001b[0m \u001b[38;5;66;03m# the TypeError.\u001b[39;00m\n\u001b[1;32m 3817\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_check_indexing_error(key)\n", - "\u001b[0;31mKeyError\u001b[0m: 0" - ] - } - ], - "source": [ - "data['fee'][0]" - ] - }, { "cell_type": "code", "execution_count": null, From 13aedc1be7875d2fd6ee559ef30046ea57015a87 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Mon, 29 Apr 2024 15:15:39 -0600 Subject: [PATCH 07/16] finalized front page --- conf/conf.yaml | 1 + layouts/front_page.py | 51 +- prototype.ipynb | 3043 +++++++++++++---------- testing_2_db.ipynb | 5494 +++++++++++++++++++++++++++++++++++++---- utils/api_2_db.py | 67 +- utils/db_util.py | 45 +- 6 files changed, 6852 insertions(+), 1849 deletions(-) diff --git a/conf/conf.yaml b/conf/conf.yaml index 771b996c..5f42e2d5 100644 --- a/conf/conf.yaml +++ b/conf/conf.yaml @@ -28,6 +28,7 @@ default_values: 'rewardType VARCHAR(50)', # String type for reward types 'poolEffort NUMERIC', # Numeric type for pool effort 'poolTTF NUMERIC', # Numeric type for pool time to find + 'price NUMERIC', 'insert_time_stamp TIMESTAMP'] # Timestamp for the exact time data was recorded block_cols: ['poolId VARCHAR(255)', diff --git a/layouts/front_page.py b/layouts/front_page.py index d95cec14..d1b1841a 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -92,10 +92,8 @@ def setup_front_page_callbacks(app, reader): def update_first_row(n): data = db_sync.db.fetch_data('stats') data = data[data.insert_time_stamp == max(data.insert_time_stamp)] - payment = db_sync.db.fetch_data('payment') - # reader.update_data() - # data = reader.data - ergo = payment['price'][0] # need to pull latest or move to data and not use the first index + + ergo = data['price'].item() # need to pull latest or move to data and not use the first index n_miners = '{}'.format(data['connectedminers'].item()) hashrate = '{} GH/s'.format(data['poolhashrate'].item()) @@ -111,8 +109,7 @@ def update_first_row(n): [Input('fp-int-1', 'n_intervals')]) def update_metrics(n): - # reader.update_data() - # data = reader.data + data = db_sync.db.fetch_data('stats') # need to pull latest sample and grab values data = data[data.insert_time_stamp == max(data.insert_time_stamp)] @@ -190,6 +187,8 @@ def update_plots(n, value): title = 'HASHRATE OVER TIME' performance_df = db_sync.db.fetch_data('performance') + performance_df = performance_df[performance_df.worker != 'totals'] + performance_df['hashrate'] = performance_df['hashrate'] / 1e3 total_hashrate_df = performance_df.groupby('created').agg({ 'hashrate': 'sum', # Sum of hashrate @@ -222,24 +221,38 @@ def update_content(n, selected_data): if selected_data == 'blocks': block_df = db_sync.db.fetch_data('block') - block_df = block_df.sort_values(['time_found']) - block_df['rolling_effort'] = block_df['effort'].expanding().mean() - block_df['effort'] = block_df['effort'] * 100 - # block_df['Confirmation'] = round(block_df['confirmationProgress'], 2) - - # block_df = block_df.filter(['Time Found', 'blockHeight', 'miner', 'effort [%]', 'reward [erg]', 'Confirmation [%]']) + block_df = block_df.filter(['time_found', 'blockheight', 'confirmationprogress', 'effort', 'reward', 'miner']) + block_df = block_df.sort_values(['time_found'], ascending=False) + # block_df['rolling_effort'] = block_df['effort'].expanding().mean() + block_df['effort'] = block_df['effort'] * 100 + + block_df = block_df.rename(columns={'effort': 'Effort [%]', 'time_found': 'Time Found', + 'blockheight': 'Height', 'miner': 'Miner', + 'reward': 'ERG Reward', 'confirmationprogress': 'Confirmation'}) df = block_df - df['miner'] = df['miner'].apply(lambda x: f"{x[:5]}...{x[-5:]}" if len(x) > 10 else x) title = 'Blocks Data' + elif selected_data == 'miners': df = db_sync.db.fetch_data('live_worker') - df = df.groupby('miner').agg({ - 'hashrate': 'sum', # Sum of hashrate - 'shares_per_second': 'sum', # Sum of shares_per_second - 'worker': 'nunique', # Count of unique workers - # 'miner': 'miner' # Count of unique miners - }) + df = df[df.worker == 'totals'] + df = df.filter(['miner', 'hashrate', 'effort', 'ttf', 'last_block_found']) + df['miner'] = ['{}...{}'.format(miner[:3], miner[-5:]) for miner in df.miner] + df['hashrate'] = round(df['hashrate'], 2) + + df = df.rename(columns={'miner': 'Miner', + 'hashrate': 'MH/s', + 'effort': 'Current Effort [%]', + 'ttf': 'Days to Find', + 'last_block_found': 'Last Block Found'}) + + # df = df.groupby('miner').agg({ + # 'hashrate': 'sum', # Sum of hashrate + # 'shares_per_second': 'sum', # Sum of shares_per_second + # 'worker': 'nunique', # Count of unique workers + # # 'miner': 'miner' # Count of unique miners + # }).reset_index() + # need to add TTF EFFORT etc # df = reader.get_latest_worker_samples(totals=True) diff --git a/prototype.ipynb b/prototype.ipynb index e89ec498..36e69a02 100644 --- a/prototype.ipynb +++ b/prototype.ipynb @@ -50,7 +50,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 3, @@ -104,18 +104,18 @@ "data": { "text/plain": [ "{'poolId': 'ErgoSigmanauts',\n", - " 'blockHeight': 1252559,\n", - " 'networkDifficulty': 422881.6589500178,\n", + " 'blockHeight': 1253410,\n", + " 'networkDifficulty': 354831.65524982265,\n", " 'status': 'confirmed',\n", " 'confirmationProgress': 1,\n", - " 'effort': 0.017699607118926087,\n", - " 'transactionConfirmationData': '56dcc160776a8a71',\n", - " 'reward': 27.0221,\n", - " 'infoLink': 'https://explorer.ergoplatform.com/en/blocks/f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4a7a4ce7fecc67517ea',\n", - " 'hash': 'f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4a7a4ce7fecc67517ea',\n", - " 'miner': '9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL8ygPH',\n", + " 'effort': 1.04586555676699,\n", + " 'transactionConfirmationData': '580c001f31e4fd3a',\n", + " 'reward': 27.0,\n", + " 'infoLink': 'https://explorer.ergoplatform.com/en/blocks/7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36fd366f626245429cec',\n", + " 'hash': '7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36fd366f626245429cec',\n", + " 'miner': '9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZSKz8K',\n", " 'source': 'ErgoSigmanauts',\n", - " 'created': '2024-04-28T03:06:52.686688Z'}" + " 'created': '2024-04-29T08:20:04.699821Z'}" ] }, "execution_count": 6, @@ -173,82 +173,82 @@ " \n", " 0\n", " ErgoSigmanauts\n", - " 1252559\n", - " 422881.658950\n", + " 1253410\n", + " 354831.655250\n", " confirmed\n", " 1\n", - " 0.017700\n", - " 56dcc160776a8a71\n", - " 27.0221\n", - " https://explorer.ergoplatform.com/en/blocks/f1...\n", - " f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...\n", - " 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...\n", + " 1.045866\n", + " 580c001f31e4fd3a\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/7a...\n", + " 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...\n", + " 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...\n", " ErgoSigmanauts\n", - " 2024-04-28 03:06:52\n", + " 2024-04-29 08:20:04\n", " \n", " \n", " 1\n", " ErgoSigmanauts\n", - " 1252553\n", - " 422881.658950\n", + " 1253118\n", + " 362089.481987\n", " confirmed\n", " 1\n", - " 1.856882\n", - " 50230ed620a8fa0b\n", - " 27.0000\n", - " https://explorer.ergoplatform.com/en/blocks/9d...\n", - " 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...\n", + " 0.647874\n", + " 50239669e1ac4af8\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/44...\n", + " 44167cd62e4406f726826b15a0fcf6e843fade6c445102...\n", " 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...\n", " ErgoSigmanauts\n", - " 2024-04-28 02:55:03\n", + " 2024-04-28 23:18:22\n", " \n", " \n", " 2\n", " ErgoSigmanauts\n", - " 1251978\n", - " 380358.285885\n", + " 1252956\n", + " 390351.076394\n", " confirmed\n", " 1\n", - " 0.112525\n", - " 50a3000448228642\n", - " 27.0010\n", - " https://explorer.ergoplatform.com/en/blocks/58...\n", - " 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...\n", - " 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...\n", + " 0.112517\n", + " 57f9f469dba977c3\n", + " 27.009200\n", + " https://explorer.ergoplatform.com/en/blocks/d0...\n", + " d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...\n", + " 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...\n", " ErgoSigmanauts\n", - " 2024-04-27 07:59:45\n", + " 2024-04-28 17:16:48\n", " \n", " \n", " 3\n", " ErgoSigmanauts\n", - " 1251939\n", - " 366775.443497\n", + " 1252929\n", + " 390351.076394\n", " confirmed\n", " 1\n", - " 0.244779\n", - " 502468dac3622052\n", - " 27.0182\n", - " https://explorer.ergoplatform.com/en/blocks/a4...\n", - " a4dc120a4aa17097a163160eeb41c3dba31780f4086491...\n", - " 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...\n", + " 0.313074\n", + " 5016a01340d6b9ba\n", + " 27.653129\n", + " https://explorer.ergoplatform.com/en/blocks/88...\n", + " 881144c4c46b08e39d59817863da508be56c215eafb8eb...\n", + " 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...\n", " ErgoSigmanauts\n", - " 2024-04-27 06:54:45\n", + " 2024-04-28 16:09:49\n", " \n", " \n", " 4\n", " ErgoSigmanauts\n", - " 1251871\n", - " 366775.443497\n", + " 1252840\n", + " 350627.704840\n", " confirmed\n", " 1\n", - " 1.039931\n", - " 50d8fd9c81187de2\n", - " 27.0088\n", - " https://explorer.ergoplatform.com/en/blocks/2b...\n", - " 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...\n", - " 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...\n", + " 0.964228\n", + " 57f1000efc558ff1\n", + " 27.019200\n", + " https://explorer.ergoplatform.com/en/blocks/93...\n", + " 9395fce740c65f238690a5639a2938e0bce75b8a28b065...\n", + " 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...\n", " ErgoSigmanauts\n", - " 2024-04-27 04:31:16\n", + " 2024-04-28 12:59:58\n", " \n", " \n", "\n", @@ -256,46 +256,46 @@ ], "text/plain": [ " poolId blockHeight networkDifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", - "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", - "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", - "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", - "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "0 ErgoSigmanauts 1253410 354831.655250 confirmed \n", + "1 ErgoSigmanauts 1253118 362089.481987 confirmed \n", + "2 ErgoSigmanauts 1252956 390351.076394 confirmed \n", + "3 ErgoSigmanauts 1252929 390351.076394 confirmed \n", + "4 ErgoSigmanauts 1252840 350627.704840 confirmed \n", "\n", - " confirmationProgress effort transactionConfirmationData reward \\\n", - "0 1 0.017700 56dcc160776a8a71 27.0221 \n", - "1 1 1.856882 50230ed620a8fa0b 27.0000 \n", - "2 1 0.112525 50a3000448228642 27.0010 \n", - "3 1 0.244779 502468dac3622052 27.0182 \n", - "4 1 1.039931 50d8fd9c81187de2 27.0088 \n", + " confirmationProgress effort transactionConfirmationData reward \\\n", + "0 1 1.045866 580c001f31e4fd3a 27.000000 \n", + "1 1 0.647874 50239669e1ac4af8 27.000000 \n", + "2 1 0.112517 57f9f469dba977c3 27.009200 \n", + "3 1 0.313074 5016a01340d6b9ba 27.653129 \n", + "4 1 0.964228 57f1000efc558ff1 27.019200 \n", "\n", " infoLink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "2 https://explorer.ergoplatform.com/en/blocks/58... \n", - "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "0 https://explorer.ergoplatform.com/en/blocks/7a... \n", + "1 https://explorer.ergoplatform.com/en/blocks/44... \n", + "2 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "3 https://explorer.ergoplatform.com/en/blocks/88... \n", + "4 https://explorer.ergoplatform.com/en/blocks/93... \n", "\n", " hash \\\n", - "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", - "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", - "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", - "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", - "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "0 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... \n", + "1 44167cd62e4406f726826b15a0fcf6e843fade6c445102... \n", + "2 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... \n", + "3 881144c4c46b08e39d59817863da508be56c215eafb8eb... \n", + "4 9395fce740c65f238690a5639a2938e0bce75b8a28b065... \n", "\n", " miner source \\\n", - "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "0 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "2 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "3 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "4 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... ErgoSigmanauts \n", "\n", " time_found \n", - "0 2024-04-28 03:06:52 \n", - "1 2024-04-28 02:55:03 \n", - "2 2024-04-27 07:59:45 \n", - "3 2024-04-27 06:54:45 \n", - "4 2024-04-27 04:31:16 " + "0 2024-04-29 08:20:04 \n", + "1 2024-04-28 23:18:22 \n", + "2 2024-04-28 17:16:48 \n", + "3 2024-04-28 16:09:49 \n", + "4 2024-04-28 12:59:58 " ] }, "execution_count": 7, @@ -394,24 +394,24 @@ "data": { "text/plain": [ "{'fee': 0.9,\n", - " 'paid': 1505.063062438491,\n", - " 'blocks': 55,\n", - " 'last_block_found': 'Sunday, April 28, 2024 at 03:06:52 AM',\n", + " 'paid': 1637.626309487606,\n", + " 'blocks': 60,\n", + " 'last_block_found': 'Monday, April 29, 2024 at 08:20:04 AM',\n", " 'enabled': True,\n", " 'minimumPayment': 0.5,\n", " 'payoutScheme': 'PPLNS',\n", - " 'connectedMiners': 35,\n", - " 'poolHashrate': 51.63,\n", + " 'connectedMiners': 39,\n", + " 'poolHashrate': 58.17,\n", " 'sharesPerSecond': 4,\n", " 'networkType': 'mainnet',\n", - " 'networkHashrate': 14.187601260270933,\n", - " 'networkDifficulty': 1.702512151232512,\n", - " 'lastNetworkBlockTime': '2024-04-28T05:38:10.6154276Z',\n", - " 'blockHeight': 1252635,\n", - " 'connectedPeers': 114,\n", + " 'networkHashrate': 13.741712072157867,\n", + " 'networkDifficulty': 1.649005448658944,\n", + " 'lastNetworkBlockTime': '2024-04-29T19:50:07.5828661Z',\n", + " 'blockHeight': 1253767,\n", + " 'connectedPeers': 109,\n", " 'rewardType': 'POW',\n", - " 'poolEffort': 28.434,\n", - " 'poolTTF': 0.382}" + " 'poolEffort': 146.441,\n", + " 'poolTTF': 0.328}" ] }, "execution_count": 11, @@ -477,7 +477,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -527,24 +527,24 @@ " \n", " 0\n", " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", + " 1637.626309\n", + " 60\n", + " 2024-04-29 08:20:04\n", " True\n", " 0.5\n", " PPLNS\n", - " 35\n", - " 51.63\n", + " 39\n", + " 58.17\n", " 4.0\n", " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 05:38:10.615428\n", - " 1252635\n", - " 114\n", + " 13.741712\n", + " 1.649005\n", + " 2024-04-29 19:50:07.582866\n", + " 1253767\n", + " 109\n", " POW\n", - " 28.434\n", - " 0.382\n", + " 146.441\n", + " 0.328\n", " \n", " \n", "\n", @@ -552,16 +552,16 @@ ], "text/plain": [ " fee paid blocks last_block_found enabled minimumpayment \\\n", - "0 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "0 0.9 1637.626309 60 2024-04-29 08:20:04 True 0.5 \n", "\n", " payoutscheme connectedminers poolhashrate sharespersecond networktype \\\n", - "0 PPLNS 35 51.63 4.0 mainnet \n", + "0 PPLNS 39 58.17 4.0 mainnet \n", "\n", " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", - "0 14.187601 1.702512 2024-04-28 05:38:10.615428 1252635 \n", + "0 13.741712 1.649005 2024-04-29 19:50:07.582866 1253767 \n", "\n", " connectedpeers rewardtype pooleffort poolttf \n", - "0 114 POW 28.434 0.382 " + "0 109 POW 146.441 0.328 " ] }, "execution_count": 14, @@ -598,7 +598,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -642,6 +642,86 @@ " \n", " 0\n", " ErgoSigmanauts\n", + " 1253410\n", + " 354831.655250\n", + " confirmed\n", + " 1.0\n", + " 1.045866\n", + " 580c001f31e4fd3a\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/7a...\n", + " 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...\n", + " 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...\n", + " ErgoSigmanauts\n", + " 2024-04-29 08:20:04\n", + " \n", + " \n", + " 1\n", + " ErgoSigmanauts\n", + " 1253118\n", + " 362089.481987\n", + " confirmed\n", + " 1.0\n", + " 0.647874\n", + " 50239669e1ac4af8\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/44...\n", + " 44167cd62e4406f726826b15a0fcf6e843fade6c445102...\n", + " 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...\n", + " ErgoSigmanauts\n", + " 2024-04-28 23:18:22\n", + " \n", + " \n", + " 2\n", + " ErgoSigmanauts\n", + " 1252956\n", + " 390351.076394\n", + " confirmed\n", + " 1.0\n", + " 0.112517\n", + " 57f9f469dba977c3\n", + " 27.009200\n", + " https://explorer.ergoplatform.com/en/blocks/d0...\n", + " d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...\n", + " 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...\n", + " ErgoSigmanauts\n", + " 2024-04-28 17:16:48\n", + " \n", + " \n", + " 3\n", + " ErgoSigmanauts\n", + " 1252929\n", + " 390351.076394\n", + " confirmed\n", + " 1.0\n", + " 0.313074\n", + " 5016a01340d6b9ba\n", + " 27.653129\n", + " https://explorer.ergoplatform.com/en/blocks/88...\n", + " 881144c4c46b08e39d59817863da508be56c215eafb8eb...\n", + " 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...\n", + " ErgoSigmanauts\n", + " 2024-04-28 16:09:49\n", + " \n", + " \n", + " 4\n", + " ErgoSigmanauts\n", + " 1252840\n", + " 350627.704840\n", + " confirmed\n", + " 1.0\n", + " 0.964228\n", + " 57f1000efc558ff1\n", + " 27.019200\n", + " https://explorer.ergoplatform.com/en/blocks/93...\n", + " 9395fce740c65f238690a5639a2938e0bce75b8a28b065...\n", + " 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...\n", + " ErgoSigmanauts\n", + " 2024-04-28 12:59:58\n", + " \n", + " \n", + " 5\n", + " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", " confirmed\n", @@ -656,7 +736,7 @@ " 2024-04-28 03:06:52\n", " \n", " \n", - " 1\n", + " 6\n", " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", @@ -672,7 +752,7 @@ " 2024-04-28 02:55:03\n", " \n", " \n", - " 2\n", + " 7\n", " ErgoSigmanauts\n", " 1251978\n", " 380358.285885\n", @@ -688,7 +768,7 @@ " 2024-04-27 07:59:45\n", " \n", " \n", - " 3\n", + " 8\n", " ErgoSigmanauts\n", " 1251939\n", " 366775.443497\n", @@ -704,7 +784,7 @@ " 2024-04-27 06:54:45\n", " \n", " \n", - " 4\n", + " 9\n", " ErgoSigmanauts\n", " 1251871\n", " 366775.443497\n", @@ -720,7 +800,7 @@ " 2024-04-27 04:31:16\n", " \n", " \n", - " 5\n", + " 10\n", " ErgoSigmanauts\n", " 1251567\n", " 388383.156547\n", @@ -736,7 +816,7 @@ " 2024-04-26 18:24:58\n", " \n", " \n", - " 6\n", + " 11\n", " ErgoSigmanauts\n", " 1251499\n", " 388383.156547\n", @@ -752,7 +832,7 @@ " 2024-04-26 16:00:40\n", " \n", " \n", - " 7\n", + " 12\n", " ErgoSigmanauts\n", " 1249527\n", " 315887.249576\n", @@ -768,7 +848,7 @@ " 2024-04-23 22:19:10\n", " \n", " \n", - " 8\n", + " 13\n", " ErgoSigmanauts\n", " 1249440\n", " 315887.249576\n", @@ -784,7 +864,7 @@ " 2024-04-23 19:17:03\n", " \n", " \n", - " 9\n", + " 14\n", " ErgoSigmanauts\n", " 1249432\n", " 315887.249576\n", @@ -800,7 +880,7 @@ " 2024-04-23 19:06:49\n", " \n", " \n", - " 10\n", + " 15\n", " ErgoSigmanauts\n", " 1249230\n", " 361687.597350\n", @@ -816,7 +896,7 @@ " 2024-04-23 12:18:50\n", " \n", " \n", - " 11\n", + " 16\n", " ErgoSigmanauts\n", " 1248838\n", " 426627.604763\n", @@ -832,7 +912,7 @@ " 2024-04-22 22:07:16\n", " \n", " \n", - " 12\n", + " 17\n", " ErgoSigmanauts\n", " 1248716\n", " 402639.913195\n", @@ -848,7 +928,7 @@ " 2024-04-22 18:11:34\n", " \n", " \n", - " 13\n", + " 18\n", " ErgoSigmanauts\n", " 1248443\n", " 380709.272335\n", @@ -864,7 +944,7 @@ " 2024-04-22 09:12:21\n", " \n", " \n", - " 14\n", + " 19\n", " ErgoSigmanauts\n", " 1248031\n", " 396231.066521\n", @@ -880,7 +960,7 @@ " 2024-04-21 18:58:55\n", " \n", " \n", - " 15\n", + " 20\n", " ErgoSigmanauts\n", " 1247949\n", " 334193.979483\n", @@ -896,7 +976,7 @@ " 2024-04-21 16:57:09\n", " \n", " \n", - " 16\n", + " 21\n", " ErgoSigmanauts\n", " 1247906\n", " 334193.979483\n", @@ -912,7 +992,7 @@ " 2024-04-21 15:49:03\n", " \n", " \n", - " 17\n", + " 22\n", " ErgoSigmanauts\n", " 1247634\n", " 390680.078087\n", @@ -928,7 +1008,7 @@ " 2024-04-21 05:49:18\n", " \n", " \n", - " 18\n", + " 23\n", " ErgoSigmanauts\n", " 1246555\n", " 371421.349703\n", @@ -944,7 +1024,7 @@ " 2024-04-19 17:13:40\n", " \n", " \n", - " 19\n", + " 24\n", " ErgoSigmanauts\n", " 1246329\n", " 338457.841118\n", @@ -960,7 +1040,7 @@ " 2024-04-19 10:06:26\n", " \n", " \n", - " 20\n", + " 25\n", " ErgoSigmanauts\n", " 1246316\n", " 338457.841118\n", @@ -976,7 +1056,7 @@ " 2024-04-19 09:41:15\n", " \n", " \n", - " 21\n", + " 26\n", " ErgoSigmanauts\n", " 1246282\n", " 338457.841118\n", @@ -992,7 +1072,7 @@ " 2024-04-19 08:45:52\n", " \n", " \n", - " 22\n", + " 27\n", " ErgoSigmanauts\n", " 1245573\n", " 345942.822277\n", @@ -1008,7 +1088,7 @@ " 2024-04-18 09:31:37\n", " \n", " \n", - " 23\n", + " 28\n", " ErgoSigmanauts\n", " 1245528\n", " 323130.127436\n", @@ -1024,7 +1104,7 @@ " 2024-04-18 08:01:31\n", " \n", " \n", - " 24\n", + " 29\n", " ErgoSigmanauts\n", " 1245375\n", " 343213.854779\n", @@ -1040,7 +1120,7 @@ " 2024-04-18 03:11:44\n", " \n", " \n", - " 25\n", + " 30\n", " ErgoSigmanauts\n", " 1245219\n", " 385248.184230\n", @@ -1056,7 +1136,7 @@ " 2024-04-17 21:39:45\n", " \n", " \n", - " 26\n", + " 31\n", " ErgoSigmanauts\n", " 1244611\n", " 350337.673747\n", @@ -1072,7 +1152,7 @@ " 2024-04-17 01:03:11\n", " \n", " \n", - " 27\n", + " 32\n", " ErgoSigmanauts\n", " 1244487\n", " 347763.784750\n", @@ -1088,7 +1168,7 @@ " 2024-04-16 20:53:07\n", " \n", " \n", - " 28\n", + " 33\n", " ErgoSigmanauts\n", " 1243556\n", " 346496.758155\n", @@ -1104,7 +1184,7 @@ " 2024-04-15 13:26:36\n", " \n", " \n", - " 29\n", + " 34\n", " ErgoSigmanauts\n", " 1243309\n", " 317174.205629\n", @@ -1120,7 +1200,7 @@ " 2024-04-15 05:58:59\n", " \n", " \n", - " 30\n", + " 35\n", " ErgoSigmanauts\n", " 1243018\n", " 353518.612001\n", @@ -1136,7 +1216,7 @@ " 2024-04-14 19:46:29\n", " \n", " \n", - " 31\n", + " 36\n", " ErgoSigmanauts\n", " 1242682\n", " 379295.328612\n", @@ -1152,7 +1232,7 @@ " 2024-04-14 07:53:57\n", " \n", " \n", - " 32\n", + " 37\n", " ErgoSigmanauts\n", " 1241796\n", " 370202.405388\n", @@ -1168,7 +1248,7 @@ " 2024-04-13 01:40:15\n", " \n", " \n", - " 33\n", + " 38\n", " ErgoSigmanauts\n", " 1240237\n", " 406987.879722\n", @@ -1184,7 +1264,7 @@ " 2024-04-10 21:52:48\n", " \n", " \n", - " 34\n", + " 39\n", " ErgoSigmanauts\n", " 1240101\n", " 411836.853619\n", @@ -1200,7 +1280,7 @@ " 2024-04-10 16:45:58\n", " \n", " \n", - " 35\n", + " 40\n", " ErgoSigmanauts\n", " 1239922\n", " 414752.684611\n", @@ -1216,7 +1296,7 @@ " 2024-04-10 11:38:14\n", " \n", " \n", - " 36\n", + " 41\n", " ErgoSigmanauts\n", " 1239612\n", " 395105.076364\n", @@ -1232,7 +1312,7 @@ " 2024-04-09 23:57:08\n", " \n", " \n", - " 37\n", + " 42\n", " ErgoSigmanauts\n", " 1238592\n", " 386279.122336\n", @@ -1248,7 +1328,7 @@ " 2024-04-08 14:35:09\n", " \n", " \n", - " 38\n", + " 43\n", " ErgoSigmanauts\n", " 1238040\n", " 399941.963788\n", @@ -1264,7 +1344,7 @@ " 2024-04-07 19:55:43\n", " \n", " \n", - " 39\n", + " 44\n", " ErgoSigmanauts\n", " 1236735\n", " 385434.149366\n", @@ -1280,7 +1360,7 @@ " 2024-04-06 00:11:43\n", " \n", " \n", - " 40\n", + " 45\n", " ErgoSigmanauts\n", " 1235990\n", " 387916.169692\n", @@ -1296,7 +1376,7 @@ " 2024-04-04 23:46:44\n", " \n", " \n", - " 41\n", + " 46\n", " ErgoSigmanauts\n", " 1235365\n", " 466883.931372\n", @@ -1312,7 +1392,7 @@ " 2024-04-04 01:40:19\n", " \n", " \n", - " 42\n", + " 47\n", " ErgoSigmanauts\n", " 1235136\n", " 433886.497034\n", @@ -1328,7 +1408,7 @@ " 2024-04-03 18:22:18\n", " \n", " \n", - " 43\n", + " 48\n", " ErgoSigmanauts\n", " 1234733\n", " 425282.536901\n", @@ -1344,7 +1424,7 @@ " 2024-04-03 04:57:28\n", " \n", " \n", - " 44\n", + " 49\n", " ErgoSigmanauts\n", " 1232662\n", " 385380.245572\n", @@ -1360,7 +1440,7 @@ " 2024-03-31 07:40:29\n", " \n", " \n", - " 45\n", + " 50\n", " ErgoSigmanauts\n", " 1232628\n", " 363957.496239\n", @@ -1376,7 +1456,7 @@ " 2024-03-31 06:53:18\n", " \n", " \n", - " 46\n", + " 51\n", " ErgoSigmanauts\n", " 1232487\n", " 360630.583506\n", @@ -1392,7 +1472,7 @@ " 2024-03-31 02:11:27\n", " \n", " \n", - " 47\n", + " 52\n", " ErgoSigmanauts\n", " 1231651\n", " 367785.409859\n", @@ -1408,7 +1488,7 @@ " 2024-03-29 22:22:38\n", " \n", " \n", - " 48\n", + " 53\n", " ErgoSigmanauts\n", " 1231144\n", " 405099.842403\n", @@ -1424,7 +1504,7 @@ " 2024-03-29 04:26:22\n", " \n", " \n", - " 49\n", + " 54\n", " ErgoSigmanauts\n", " 1230782\n", " 360986.500966\n", @@ -1440,7 +1520,7 @@ " 2024-03-28 16:41:02\n", " \n", " \n", - " 50\n", + " 55\n", " ErgoSigmanauts\n", " 1230749\n", " 360986.500966\n", @@ -1456,7 +1536,7 @@ " 2024-03-28 15:40:37\n", " \n", " \n", - " 51\n", + " 56\n", " ErgoSigmanauts\n", " 1230547\n", " 434381.378191\n", @@ -1472,7 +1552,7 @@ " 2024-03-28 08:26:49\n", " \n", " \n", - " 52\n", + " 57\n", " ErgoSigmanauts\n", " 1230104\n", " 347635.796935\n", @@ -1488,7 +1568,7 @@ " 2024-03-27 18:07:25\n", " \n", " \n", - " 53\n", + " 58\n", " ErgoSigmanauts\n", " 1223980\n", " 416310.690227\n", @@ -1504,7 +1584,7 @@ " 2024-03-19 04:19:20\n", " \n", " \n", - " 54\n", + " 59\n", " ErgoSigmanauts\n", " 1221911\n", " 421209.622611\n", @@ -1525,346 +1605,376 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", - "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", - "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", - "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", - "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", - "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", - "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", - "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", - "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", - "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", - "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", - "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", - "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", - "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", - "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", - "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", - "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", - "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", - "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", - "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", - "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", - "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", - "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", - "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", - "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", - "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", - "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", - "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", - "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", - "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", - "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", - "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", - "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", - "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", - "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", - "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", - "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", - "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", - "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", - "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", - "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", - "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", - "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", - "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", - "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", - "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", - "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", - "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", - "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", - "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", - "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", - "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", - "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", - "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", - "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "0 ErgoSigmanauts 1253410 354831.655250 confirmed \n", + "1 ErgoSigmanauts 1253118 362089.481987 confirmed \n", + "2 ErgoSigmanauts 1252956 390351.076394 confirmed \n", + "3 ErgoSigmanauts 1252929 390351.076394 confirmed \n", + "4 ErgoSigmanauts 1252840 350627.704840 confirmed \n", + "5 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "6 ErgoSigmanauts 1252553 422881.658950 confirmed \n", + "7 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "8 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "9 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "10 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "11 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "12 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "13 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "14 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "15 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "16 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "17 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "18 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "19 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "20 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "21 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "22 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "23 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "24 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "25 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "26 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "27 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "28 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "29 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "30 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "31 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "32 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "33 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "34 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "35 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "36 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "37 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "38 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "39 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "40 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "41 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "42 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "43 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "44 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "45 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "46 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "47 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "48 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "49 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "50 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "51 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "52 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "53 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "54 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "55 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "56 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "57 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "58 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "59 ErgoSigmanauts 1221911 421209.622611 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 1.0 0.017700 56dcc160776a8a71 27.022100 \n", - "1 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.0 0.112525 50a3000448228642 27.001000 \n", - "3 1.0 0.244779 502468dac3622052 27.018200 \n", - "4 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.0 0.261117 555f000b343364e4 27.005100 \n", - "6 1.0 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.0 0.019216 50187b62b18da535 27.010000 \n", - "9 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.0 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.0 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.0 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.0 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.0 0.690287 1a16000df5456083 27.026500 \n", - "17 1.0 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.0 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.0 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.0 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.0 0.384602 126b001c1226e666 27.004100 \n", - "25 1.0 1.361363 123200132a4f0053 27.001000 \n", - "26 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.0 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.0 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.0 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.0 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.0 1.394561 12200009ea038849 27.017500 \n", - "32 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.0 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.0 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.0 0.379170 10111463352887a3 27.001100 \n", - "36 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.0 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.0 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.0 0.525286 20058216259db392 30.010000 \n", - "41 1.0 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.0 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.0 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.0 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.0 0.895507 300b000932aead3a 30.007862 \n", - "54 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", + "0 1.0 1.045866 580c001f31e4fd3a 27.000000 \n", + "1 1.0 0.647874 50239669e1ac4af8 27.000000 \n", + "2 1.0 0.112517 57f9f469dba977c3 27.009200 \n", + "3 1.0 0.313074 5016a01340d6b9ba 27.653129 \n", + "4 1.0 0.964228 57f1000efc558ff1 27.019200 \n", + "5 1.0 0.017700 56dcc160776a8a71 27.022100 \n", + "6 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", + "7 1.0 0.112525 50a3000448228642 27.001000 \n", + "8 1.0 0.244779 502468dac3622052 27.018200 \n", + "9 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", + "10 1.0 0.261117 555f000b343364e4 27.005100 \n", + "11 1.0 6.396079 507971cae2ee4a18 27.004200 \n", + "12 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", + "13 1.0 0.019216 50187b62b18da535 27.010000 \n", + "14 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", + "15 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", + "16 1.0 0.351294 186e549eb8340f12 27.034400 \n", + "17 1.0 0.685916 1c96000783680ce2 27.008244 \n", + "18 1.0 1.001987 188b8a2690b77569 27.007400 \n", + "19 1.0 0.161205 1c1800034e77b166 27.001960 \n", + "20 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", + "21 1.0 0.690287 1a16000df5456083 27.026500 \n", + "22 1.0 3.039863 1a1329402f2206ed 27.069355 \n", + "23 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", + "24 1.0 0.033313 1642835a069e4fb9 27.025700 \n", + "25 1.0 0.072236 146857274f45ac2c 27.180640 \n", + "26 1.0 2.084016 164237aca8296f1c 27.012601 \n", + "27 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "28 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", + "29 1.0 0.384602 126b001c1226e666 27.004100 \n", + "30 1.0 1.361363 123200132a4f0053 27.001000 \n", + "31 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", + "32 1.0 2.109182 126b0037bf192dd9 27.004000 \n", + "33 1.0 0.384074 121c61dad76dde64 27.002200 \n", + "34 1.0 0.470362 1232000391a2d9da 27.009000 \n", + "35 1.0 0.517238 124d61659aa64c7a 27.076500 \n", + "36 1.0 1.394561 12200009ea038849 27.017500 \n", + "37 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", + "38 1.0 0.156104 100fe6c78281bfae 27.130969 \n", + "39 1.0 0.177793 10da0014d0866a1a 27.006200 \n", + "40 1.0 0.379170 10111463352887a3 27.001100 \n", + "41 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", + "42 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "43 1.0 1.240973 101010806c3bfec2 30.005000 \n", + "44 1.0 0.675790 100d40c8c30375f9 30.025167 \n", + "45 1.0 0.525286 20058216259db392 30.010000 \n", + "46 1.0 0.169038 d0db3663848642f5 30.068900 \n", + "47 1.0 0.348562 d4481db8a1682303 30.007660 \n", + "48 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", + "49 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", + "50 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", + "51 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", + "52 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", + "53 1.0 0.329434 d88f00142c1483c1 30.002000 \n", + "54 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "55 1.0 0.287231 d8a48cee009b608c 30.006550 \n", + "56 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", + "57 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", + "58 1.0 0.895507 300b000932aead3a 30.007862 \n", + "59 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", "\n", " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "2 https://explorer.ergoplatform.com/en/blocks/58... \n", - "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", - "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", - "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", - "8 https://explorer.ergoplatform.com/en/blocks/22... \n", - "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", - "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", - "11 https://explorer.ergoplatform.com/en/blocks/17... \n", - "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", - "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "14 https://explorer.ergoplatform.com/en/blocks/92... \n", - "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", - "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "18 https://explorer.ergoplatform.com/en/blocks/40... \n", - "19 https://explorer.ergoplatform.com/en/blocks/32... \n", - "20 https://explorer.ergoplatform.com/en/blocks/02... \n", - "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", - "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", - "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", - "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "25 https://explorer.ergoplatform.com/en/blocks/32... \n", - "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", - "27 https://explorer.ergoplatform.com/en/blocks/79... \n", - "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", - "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", - "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", - "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "32 https://explorer.ergoplatform.com/en/blocks/39... \n", - "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "34 https://explorer.ergoplatform.com/en/blocks/10... \n", - "35 https://explorer.ergoplatform.com/en/blocks/db... \n", - "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "37 https://explorer.ergoplatform.com/en/blocks/91... \n", - "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", - "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", - "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", - "41 https://explorer.ergoplatform.com/en/blocks/00... \n", - "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", - "43 https://explorer.ergoplatform.com/en/blocks/85... \n", - "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", - "45 https://explorer.ergoplatform.com/en/blocks/48... \n", - "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", - "47 https://explorer.ergoplatform.com/en/blocks/20... \n", - "48 https://explorer.ergoplatform.com/en/blocks/27... \n", - "49 https://explorer.ergoplatform.com/en/blocks/33... \n", - "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "53 https://explorer.ergoplatform.com/en/blocks/83... \n", - "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "0 https://explorer.ergoplatform.com/en/blocks/7a... \n", + "1 https://explorer.ergoplatform.com/en/blocks/44... \n", + "2 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "3 https://explorer.ergoplatform.com/en/blocks/88... \n", + "4 https://explorer.ergoplatform.com/en/blocks/93... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "6 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "7 https://explorer.ergoplatform.com/en/blocks/58... \n", + "8 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "9 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "10 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "11 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "12 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/22... \n", + "14 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "15 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "16 https://explorer.ergoplatform.com/en/blocks/17... \n", + "17 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "18 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "19 https://explorer.ergoplatform.com/en/blocks/92... \n", + "20 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "21 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "22 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "23 https://explorer.ergoplatform.com/en/blocks/40... \n", + "24 https://explorer.ergoplatform.com/en/blocks/32... \n", + "25 https://explorer.ergoplatform.com/en/blocks/02... \n", + "26 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "27 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "28 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "30 https://explorer.ergoplatform.com/en/blocks/32... \n", + "31 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "32 https://explorer.ergoplatform.com/en/blocks/79... \n", + "33 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "34 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "35 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "36 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "37 https://explorer.ergoplatform.com/en/blocks/39... \n", + "38 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "39 https://explorer.ergoplatform.com/en/blocks/10... \n", + "40 https://explorer.ergoplatform.com/en/blocks/db... \n", + "41 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "42 https://explorer.ergoplatform.com/en/blocks/91... \n", + "43 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "44 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "45 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "46 https://explorer.ergoplatform.com/en/blocks/00... \n", + "47 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "48 https://explorer.ergoplatform.com/en/blocks/85... \n", + "49 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "50 https://explorer.ergoplatform.com/en/blocks/48... \n", + "51 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "52 https://explorer.ergoplatform.com/en/blocks/20... \n", + "53 https://explorer.ergoplatform.com/en/blocks/27... \n", + "54 https://explorer.ergoplatform.com/en/blocks/33... \n", + "55 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "56 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "57 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "58 https://explorer.ergoplatform.com/en/blocks/83... \n", + "59 https://explorer.ergoplatform.com/en/blocks/47... \n", "\n", " hash \\\n", - "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", - "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", - "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", - "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", - "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", - "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", - "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", - "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", - "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", - "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", - "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", - "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", - "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", - "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", - "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", - "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", - "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", - "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", - "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", - "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", - "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", - "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", - "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", - "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", - "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", - "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", - "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", - "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", - "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", - "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", - "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", - "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", - "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", - "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", - "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", - "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", - "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", - "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", - "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", - "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", - "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", - "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", - "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", - "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", - "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", - "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", - "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", - "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", - "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", - "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", - "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", - "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", - "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", - "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", - "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "0 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... \n", + "1 44167cd62e4406f726826b15a0fcf6e843fade6c445102... \n", + "2 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... \n", + "3 881144c4c46b08e39d59817863da508be56c215eafb8eb... \n", + "4 9395fce740c65f238690a5639a2938e0bce75b8a28b065... \n", + "5 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "6 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "7 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "8 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "9 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "10 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "11 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "12 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "13 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "14 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "15 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "16 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "17 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "18 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "19 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "20 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "21 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "22 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "23 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "24 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "25 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "26 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "27 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "28 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "29 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "30 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "31 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "32 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "33 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "34 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "35 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "36 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "37 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "38 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "39 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "40 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "41 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "42 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "43 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "44 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "45 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "46 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "47 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "48 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "49 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "50 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "51 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "52 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "53 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "54 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "55 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "56 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "57 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "58 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "59 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", "\n", " miner source \\\n", - "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "0 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", - "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", - "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", - "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", - "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "2 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "3 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "4 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... ErgoSigmanauts \n", + "5 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "6 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "7 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "8 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "9 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "10 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "11 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "12 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "14 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "15 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "16 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "17 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "18 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", - "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "20 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "21 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "22 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "23 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "24 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "25 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "26 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "27 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "28 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "29 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "30 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "31 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "32 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "33 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "34 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "35 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "36 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", - "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "38 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "39 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "40 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "41 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "42 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "43 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "44 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "45 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "46 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "47 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "48 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "49 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "50 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "51 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "52 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "53 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "54 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "55 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "56 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "57 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "58 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "59 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", "\n", " time_found \n", - "0 2024-04-28 03:06:52 \n", - "1 2024-04-28 02:55:03 \n", - "2 2024-04-27 07:59:45 \n", - "3 2024-04-27 06:54:45 \n", - "4 2024-04-27 04:31:16 \n", - "5 2024-04-26 18:24:58 \n", - "6 2024-04-26 16:00:40 \n", - "7 2024-04-23 22:19:10 \n", - "8 2024-04-23 19:17:03 \n", - "9 2024-04-23 19:06:49 \n", - "10 2024-04-23 12:18:50 \n", - "11 2024-04-22 22:07:16 \n", - "12 2024-04-22 18:11:34 \n", - "13 2024-04-22 09:12:21 \n", - "14 2024-04-21 18:58:55 \n", - "15 2024-04-21 16:57:09 \n", - "16 2024-04-21 15:49:03 \n", - "17 2024-04-21 05:49:18 \n", - "18 2024-04-19 17:13:40 \n", - "19 2024-04-19 10:06:26 \n", - "20 2024-04-19 09:41:15 \n", - "21 2024-04-19 08:45:52 \n", - "22 2024-04-18 09:31:37 \n", - "23 2024-04-18 08:01:31 \n", - "24 2024-04-18 03:11:44 \n", - "25 2024-04-17 21:39:45 \n", - "26 2024-04-17 01:03:11 \n", - "27 2024-04-16 20:53:07 \n", - "28 2024-04-15 13:26:36 \n", - "29 2024-04-15 05:58:59 \n", - "30 2024-04-14 19:46:29 \n", - "31 2024-04-14 07:53:57 \n", - "32 2024-04-13 01:40:15 \n", - "33 2024-04-10 21:52:48 \n", - "34 2024-04-10 16:45:58 \n", - "35 2024-04-10 11:38:14 \n", - "36 2024-04-09 23:57:08 \n", - "37 2024-04-08 14:35:09 \n", - "38 2024-04-07 19:55:43 \n", - "39 2024-04-06 00:11:43 \n", - "40 2024-04-04 23:46:44 \n", - "41 2024-04-04 01:40:19 \n", - "42 2024-04-03 18:22:18 \n", - "43 2024-04-03 04:57:28 \n", - "44 2024-03-31 07:40:29 \n", - "45 2024-03-31 06:53:18 \n", - "46 2024-03-31 02:11:27 \n", - "47 2024-03-29 22:22:38 \n", - "48 2024-03-29 04:26:22 \n", - "49 2024-03-28 16:41:02 \n", - "50 2024-03-28 15:40:37 \n", - "51 2024-03-28 08:26:49 \n", - "52 2024-03-27 18:07:25 \n", - "53 2024-03-19 04:19:20 \n", - "54 2024-03-16 06:45:27 " + "0 2024-04-29 08:20:04 \n", + "1 2024-04-28 23:18:22 \n", + "2 2024-04-28 17:16:48 \n", + "3 2024-04-28 16:09:49 \n", + "4 2024-04-28 12:59:58 \n", + "5 2024-04-28 03:06:52 \n", + "6 2024-04-28 02:55:03 \n", + "7 2024-04-27 07:59:45 \n", + "8 2024-04-27 06:54:45 \n", + "9 2024-04-27 04:31:16 \n", + "10 2024-04-26 18:24:58 \n", + "11 2024-04-26 16:00:40 \n", + "12 2024-04-23 22:19:10 \n", + "13 2024-04-23 19:17:03 \n", + "14 2024-04-23 19:06:49 \n", + "15 2024-04-23 12:18:50 \n", + "16 2024-04-22 22:07:16 \n", + "17 2024-04-22 18:11:34 \n", + "18 2024-04-22 09:12:21 \n", + "19 2024-04-21 18:58:55 \n", + "20 2024-04-21 16:57:09 \n", + "21 2024-04-21 15:49:03 \n", + "22 2024-04-21 05:49:18 \n", + "23 2024-04-19 17:13:40 \n", + "24 2024-04-19 10:06:26 \n", + "25 2024-04-19 09:41:15 \n", + "26 2024-04-19 08:45:52 \n", + "27 2024-04-18 09:31:37 \n", + "28 2024-04-18 08:01:31 \n", + "29 2024-04-18 03:11:44 \n", + "30 2024-04-17 21:39:45 \n", + "31 2024-04-17 01:03:11 \n", + "32 2024-04-16 20:53:07 \n", + "33 2024-04-15 13:26:36 \n", + "34 2024-04-15 05:58:59 \n", + "35 2024-04-14 19:46:29 \n", + "36 2024-04-14 07:53:57 \n", + "37 2024-04-13 01:40:15 \n", + "38 2024-04-10 21:52:48 \n", + "39 2024-04-10 16:45:58 \n", + "40 2024-04-10 11:38:14 \n", + "41 2024-04-09 23:57:08 \n", + "42 2024-04-08 14:35:09 \n", + "43 2024-04-07 19:55:43 \n", + "44 2024-04-06 00:11:43 \n", + "45 2024-04-04 23:46:44 \n", + "46 2024-04-04 01:40:19 \n", + "47 2024-04-03 18:22:18 \n", + "48 2024-04-03 04:57:28 \n", + "49 2024-03-31 07:40:29 \n", + "50 2024-03-31 06:53:18 \n", + "51 2024-03-31 02:11:27 \n", + "52 2024-03-29 22:22:38 \n", + "53 2024-03-29 04:26:22 \n", + "54 2024-03-28 16:41:02 \n", + "55 2024-03-28 15:40:37 \n", + "56 2024-03-28 08:26:49 \n", + "57 2024-03-27 18:07:25 \n", + "58 2024-03-19 04:19:20 \n", + "59 2024-03-16 06:45:27 " ] }, "execution_count": 16, @@ -1917,7 +2027,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -1961,6 +2071,86 @@ " \n", " 0\n", " ErgoSigmanauts\n", + " 1253410\n", + " 354831.655250\n", + " confirmed\n", + " 1.0\n", + " 1.045866\n", + " 580c001f31e4fd3a\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/7a...\n", + " 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...\n", + " 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...\n", + " ErgoSigmanauts\n", + " 2024-04-29 08:20:04\n", + " \n", + " \n", + " 1\n", + " ErgoSigmanauts\n", + " 1253118\n", + " 362089.481987\n", + " confirmed\n", + " 1.0\n", + " 0.647874\n", + " 50239669e1ac4af8\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/44...\n", + " 44167cd62e4406f726826b15a0fcf6e843fade6c445102...\n", + " 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...\n", + " ErgoSigmanauts\n", + " 2024-04-28 23:18:22\n", + " \n", + " \n", + " 2\n", + " ErgoSigmanauts\n", + " 1252956\n", + " 390351.076394\n", + " confirmed\n", + " 1.0\n", + " 0.112517\n", + " 57f9f469dba977c3\n", + " 27.009200\n", + " https://explorer.ergoplatform.com/en/blocks/d0...\n", + " d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...\n", + " 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...\n", + " ErgoSigmanauts\n", + " 2024-04-28 17:16:48\n", + " \n", + " \n", + " 3\n", + " ErgoSigmanauts\n", + " 1252929\n", + " 390351.076394\n", + " confirmed\n", + " 1.0\n", + " 0.313074\n", + " 5016a01340d6b9ba\n", + " 27.653129\n", + " https://explorer.ergoplatform.com/en/blocks/88...\n", + " 881144c4c46b08e39d59817863da508be56c215eafb8eb...\n", + " 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...\n", + " ErgoSigmanauts\n", + " 2024-04-28 16:09:49\n", + " \n", + " \n", + " 4\n", + " ErgoSigmanauts\n", + " 1252840\n", + " 350627.704840\n", + " confirmed\n", + " 1.0\n", + " 0.964228\n", + " 57f1000efc558ff1\n", + " 27.019200\n", + " https://explorer.ergoplatform.com/en/blocks/93...\n", + " 9395fce740c65f238690a5639a2938e0bce75b8a28b065...\n", + " 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...\n", + " ErgoSigmanauts\n", + " 2024-04-28 12:59:58\n", + " \n", + " \n", + " 5\n", + " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", " confirmed\n", @@ -1975,7 +2165,7 @@ " 2024-04-28 03:06:52\n", " \n", " \n", - " 1\n", + " 6\n", " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", @@ -1991,7 +2181,7 @@ " 2024-04-28 02:55:03\n", " \n", " \n", - " 2\n", + " 7\n", " ErgoSigmanauts\n", " 1251978\n", " 380358.285885\n", @@ -2007,7 +2197,7 @@ " 2024-04-27 07:59:45\n", " \n", " \n", - " 3\n", + " 8\n", " ErgoSigmanauts\n", " 1251939\n", " 366775.443497\n", @@ -2023,7 +2213,7 @@ " 2024-04-27 06:54:45\n", " \n", " \n", - " 4\n", + " 9\n", " ErgoSigmanauts\n", " 1251871\n", " 366775.443497\n", @@ -2039,7 +2229,7 @@ " 2024-04-27 04:31:16\n", " \n", " \n", - " 5\n", + " 10\n", " ErgoSigmanauts\n", " 1251567\n", " 388383.156547\n", @@ -2055,7 +2245,7 @@ " 2024-04-26 18:24:58\n", " \n", " \n", - " 6\n", + " 11\n", " ErgoSigmanauts\n", " 1251499\n", " 388383.156547\n", @@ -2071,7 +2261,7 @@ " 2024-04-26 16:00:40\n", " \n", " \n", - " 7\n", + " 12\n", " ErgoSigmanauts\n", " 1249527\n", " 315887.249576\n", @@ -2087,7 +2277,7 @@ " 2024-04-23 22:19:10\n", " \n", " \n", - " 8\n", + " 13\n", " ErgoSigmanauts\n", " 1249440\n", " 315887.249576\n", @@ -2103,7 +2293,7 @@ " 2024-04-23 19:17:03\n", " \n", " \n", - " 9\n", + " 14\n", " ErgoSigmanauts\n", " 1249432\n", " 315887.249576\n", @@ -2119,7 +2309,7 @@ " 2024-04-23 19:06:49\n", " \n", " \n", - " 10\n", + " 15\n", " ErgoSigmanauts\n", " 1249230\n", " 361687.597350\n", @@ -2135,7 +2325,7 @@ " 2024-04-23 12:18:50\n", " \n", " \n", - " 11\n", + " 16\n", " ErgoSigmanauts\n", " 1248838\n", " 426627.604763\n", @@ -2151,7 +2341,7 @@ " 2024-04-22 22:07:16\n", " \n", " \n", - " 12\n", + " 17\n", " ErgoSigmanauts\n", " 1248716\n", " 402639.913195\n", @@ -2167,7 +2357,7 @@ " 2024-04-22 18:11:34\n", " \n", " \n", - " 13\n", + " 18\n", " ErgoSigmanauts\n", " 1248443\n", " 380709.272335\n", @@ -2183,7 +2373,7 @@ " 2024-04-22 09:12:21\n", " \n", " \n", - " 14\n", + " 19\n", " ErgoSigmanauts\n", " 1248031\n", " 396231.066521\n", @@ -2199,7 +2389,7 @@ " 2024-04-21 18:58:55\n", " \n", " \n", - " 15\n", + " 20\n", " ErgoSigmanauts\n", " 1247949\n", " 334193.979483\n", @@ -2215,7 +2405,7 @@ " 2024-04-21 16:57:09\n", " \n", " \n", - " 16\n", + " 21\n", " ErgoSigmanauts\n", " 1247906\n", " 334193.979483\n", @@ -2231,7 +2421,7 @@ " 2024-04-21 15:49:03\n", " \n", " \n", - " 17\n", + " 22\n", " ErgoSigmanauts\n", " 1247634\n", " 390680.078087\n", @@ -2247,7 +2437,7 @@ " 2024-04-21 05:49:18\n", " \n", " \n", - " 18\n", + " 23\n", " ErgoSigmanauts\n", " 1246555\n", " 371421.349703\n", @@ -2263,7 +2453,7 @@ " 2024-04-19 17:13:40\n", " \n", " \n", - " 19\n", + " 24\n", " ErgoSigmanauts\n", " 1246329\n", " 338457.841118\n", @@ -2279,7 +2469,7 @@ " 2024-04-19 10:06:26\n", " \n", " \n", - " 20\n", + " 25\n", " ErgoSigmanauts\n", " 1246316\n", " 338457.841118\n", @@ -2295,7 +2485,7 @@ " 2024-04-19 09:41:15\n", " \n", " \n", - " 21\n", + " 26\n", " ErgoSigmanauts\n", " 1246282\n", " 338457.841118\n", @@ -2311,7 +2501,7 @@ " 2024-04-19 08:45:52\n", " \n", " \n", - " 22\n", + " 27\n", " ErgoSigmanauts\n", " 1245573\n", " 345942.822277\n", @@ -2327,7 +2517,7 @@ " 2024-04-18 09:31:37\n", " \n", " \n", - " 23\n", + " 28\n", " ErgoSigmanauts\n", " 1245528\n", " 323130.127436\n", @@ -2343,7 +2533,7 @@ " 2024-04-18 08:01:31\n", " \n", " \n", - " 24\n", + " 29\n", " ErgoSigmanauts\n", " 1245375\n", " 343213.854779\n", @@ -2359,7 +2549,7 @@ " 2024-04-18 03:11:44\n", " \n", " \n", - " 25\n", + " 30\n", " ErgoSigmanauts\n", " 1245219\n", " 385248.184230\n", @@ -2375,7 +2565,7 @@ " 2024-04-17 21:39:45\n", " \n", " \n", - " 26\n", + " 31\n", " ErgoSigmanauts\n", " 1244611\n", " 350337.673747\n", @@ -2391,7 +2581,7 @@ " 2024-04-17 01:03:11\n", " \n", " \n", - " 27\n", + " 32\n", " ErgoSigmanauts\n", " 1244487\n", " 347763.784750\n", @@ -2407,7 +2597,7 @@ " 2024-04-16 20:53:07\n", " \n", " \n", - " 28\n", + " 33\n", " ErgoSigmanauts\n", " 1243556\n", " 346496.758155\n", @@ -2423,7 +2613,7 @@ " 2024-04-15 13:26:36\n", " \n", " \n", - " 29\n", + " 34\n", " ErgoSigmanauts\n", " 1243309\n", " 317174.205629\n", @@ -2439,7 +2629,7 @@ " 2024-04-15 05:58:59\n", " \n", " \n", - " 30\n", + " 35\n", " ErgoSigmanauts\n", " 1243018\n", " 353518.612001\n", @@ -2455,7 +2645,7 @@ " 2024-04-14 19:46:29\n", " \n", " \n", - " 31\n", + " 36\n", " ErgoSigmanauts\n", " 1242682\n", " 379295.328612\n", @@ -2471,7 +2661,7 @@ " 2024-04-14 07:53:57\n", " \n", " \n", - " 32\n", + " 37\n", " ErgoSigmanauts\n", " 1241796\n", " 370202.405388\n", @@ -2487,7 +2677,7 @@ " 2024-04-13 01:40:15\n", " \n", " \n", - " 33\n", + " 38\n", " ErgoSigmanauts\n", " 1240237\n", " 406987.879722\n", @@ -2503,7 +2693,7 @@ " 2024-04-10 21:52:48\n", " \n", " \n", - " 34\n", + " 39\n", " ErgoSigmanauts\n", " 1240101\n", " 411836.853619\n", @@ -2519,7 +2709,7 @@ " 2024-04-10 16:45:58\n", " \n", " \n", - " 35\n", + " 40\n", " ErgoSigmanauts\n", " 1239922\n", " 414752.684611\n", @@ -2535,7 +2725,7 @@ " 2024-04-10 11:38:14\n", " \n", " \n", - " 36\n", + " 41\n", " ErgoSigmanauts\n", " 1239612\n", " 395105.076364\n", @@ -2551,7 +2741,7 @@ " 2024-04-09 23:57:08\n", " \n", " \n", - " 37\n", + " 42\n", " ErgoSigmanauts\n", " 1238592\n", " 386279.122336\n", @@ -2567,7 +2757,7 @@ " 2024-04-08 14:35:09\n", " \n", " \n", - " 38\n", + " 43\n", " ErgoSigmanauts\n", " 1238040\n", " 399941.963788\n", @@ -2583,7 +2773,7 @@ " 2024-04-07 19:55:43\n", " \n", " \n", - " 39\n", + " 44\n", " ErgoSigmanauts\n", " 1236735\n", " 385434.149366\n", @@ -2599,7 +2789,7 @@ " 2024-04-06 00:11:43\n", " \n", " \n", - " 40\n", + " 45\n", " ErgoSigmanauts\n", " 1235990\n", " 387916.169692\n", @@ -2615,7 +2805,7 @@ " 2024-04-04 23:46:44\n", " \n", " \n", - " 41\n", + " 46\n", " ErgoSigmanauts\n", " 1235365\n", " 466883.931372\n", @@ -2631,7 +2821,7 @@ " 2024-04-04 01:40:19\n", " \n", " \n", - " 42\n", + " 47\n", " ErgoSigmanauts\n", " 1235136\n", " 433886.497034\n", @@ -2647,7 +2837,7 @@ " 2024-04-03 18:22:18\n", " \n", " \n", - " 43\n", + " 48\n", " ErgoSigmanauts\n", " 1234733\n", " 425282.536901\n", @@ -2663,7 +2853,7 @@ " 2024-04-03 04:57:28\n", " \n", " \n", - " 44\n", + " 49\n", " ErgoSigmanauts\n", " 1232662\n", " 385380.245572\n", @@ -2679,7 +2869,7 @@ " 2024-03-31 07:40:29\n", " \n", " \n", - " 45\n", + " 50\n", " ErgoSigmanauts\n", " 1232628\n", " 363957.496239\n", @@ -2695,7 +2885,7 @@ " 2024-03-31 06:53:18\n", " \n", " \n", - " 46\n", + " 51\n", " ErgoSigmanauts\n", " 1232487\n", " 360630.583506\n", @@ -2711,7 +2901,7 @@ " 2024-03-31 02:11:27\n", " \n", " \n", - " 47\n", + " 52\n", " ErgoSigmanauts\n", " 1231651\n", " 367785.409859\n", @@ -2727,7 +2917,7 @@ " 2024-03-29 22:22:38\n", " \n", " \n", - " 48\n", + " 53\n", " ErgoSigmanauts\n", " 1231144\n", " 405099.842403\n", @@ -2743,7 +2933,7 @@ " 2024-03-29 04:26:22\n", " \n", " \n", - " 49\n", + " 54\n", " ErgoSigmanauts\n", " 1230782\n", " 360986.500966\n", @@ -2759,7 +2949,7 @@ " 2024-03-28 16:41:02\n", " \n", " \n", - " 50\n", + " 55\n", " ErgoSigmanauts\n", " 1230749\n", " 360986.500966\n", @@ -2775,7 +2965,7 @@ " 2024-03-28 15:40:37\n", " \n", " \n", - " 51\n", + " 56\n", " ErgoSigmanauts\n", " 1230547\n", " 434381.378191\n", @@ -2791,7 +2981,7 @@ " 2024-03-28 08:26:49\n", " \n", " \n", - " 52\n", + " 57\n", " ErgoSigmanauts\n", " 1230104\n", " 347635.796935\n", @@ -2807,7 +2997,7 @@ " 2024-03-27 18:07:25\n", " \n", " \n", - " 53\n", + " 58\n", " ErgoSigmanauts\n", " 1223980\n", " 416310.690227\n", @@ -2823,7 +3013,7 @@ " 2024-03-19 04:19:20\n", " \n", " \n", - " 54\n", + " 59\n", " ErgoSigmanauts\n", " 1221911\n", " 421209.622611\n", @@ -2844,346 +3034,376 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", - "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", - "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", - "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", - "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", - "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", - "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", - "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", - "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", - "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", - "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", - "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", - "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", - "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", - "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", - "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", - "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", - "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", - "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", - "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", - "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", - "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", - "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", - "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", - "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", - "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", - "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", - "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", - "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", - "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", - "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", - "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", - "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", - "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", - "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", - "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", - "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", - "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", - "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", - "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", - "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", - "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", - "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", - "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", - "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", - "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", - "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", - "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", - "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", - "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", - "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", - "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", - "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", - "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", - "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "0 ErgoSigmanauts 1253410 354831.655250 confirmed \n", + "1 ErgoSigmanauts 1253118 362089.481987 confirmed \n", + "2 ErgoSigmanauts 1252956 390351.076394 confirmed \n", + "3 ErgoSigmanauts 1252929 390351.076394 confirmed \n", + "4 ErgoSigmanauts 1252840 350627.704840 confirmed \n", + "5 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "6 ErgoSigmanauts 1252553 422881.658950 confirmed \n", + "7 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "8 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "9 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "10 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "11 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "12 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "13 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "14 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "15 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "16 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "17 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "18 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "19 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "20 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "21 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "22 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "23 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "24 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "25 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "26 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "27 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "28 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "29 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "30 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "31 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "32 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "33 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "34 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "35 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "36 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "37 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "38 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "39 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "40 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "41 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "42 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "43 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "44 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "45 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "46 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "47 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "48 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "49 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "50 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "51 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "52 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "53 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "54 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "55 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "56 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "57 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "58 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "59 ErgoSigmanauts 1221911 421209.622611 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 1.0 0.017700 56dcc160776a8a71 27.022100 \n", - "1 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.0 0.112525 50a3000448228642 27.001000 \n", - "3 1.0 0.244779 502468dac3622052 27.018200 \n", - "4 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.0 0.261117 555f000b343364e4 27.005100 \n", - "6 1.0 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.0 0.019216 50187b62b18da535 27.010000 \n", - "9 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.0 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.0 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.0 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.0 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.0 0.690287 1a16000df5456083 27.026500 \n", - "17 1.0 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.0 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.0 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.0 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.0 0.384602 126b001c1226e666 27.004100 \n", - "25 1.0 1.361363 123200132a4f0053 27.001000 \n", - "26 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.0 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.0 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.0 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.0 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.0 1.394561 12200009ea038849 27.017500 \n", - "32 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.0 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.0 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.0 0.379170 10111463352887a3 27.001100 \n", - "36 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.0 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.0 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.0 0.525286 20058216259db392 30.010000 \n", - "41 1.0 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.0 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.0 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.0 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.0 0.895507 300b000932aead3a 30.007862 \n", - "54 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", + "0 1.0 1.045866 580c001f31e4fd3a 27.000000 \n", + "1 1.0 0.647874 50239669e1ac4af8 27.000000 \n", + "2 1.0 0.112517 57f9f469dba977c3 27.009200 \n", + "3 1.0 0.313074 5016a01340d6b9ba 27.653129 \n", + "4 1.0 0.964228 57f1000efc558ff1 27.019200 \n", + "5 1.0 0.017700 56dcc160776a8a71 27.022100 \n", + "6 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", + "7 1.0 0.112525 50a3000448228642 27.001000 \n", + "8 1.0 0.244779 502468dac3622052 27.018200 \n", + "9 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", + "10 1.0 0.261117 555f000b343364e4 27.005100 \n", + "11 1.0 6.396079 507971cae2ee4a18 27.004200 \n", + "12 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", + "13 1.0 0.019216 50187b62b18da535 27.010000 \n", + "14 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", + "15 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", + "16 1.0 0.351294 186e549eb8340f12 27.034400 \n", + "17 1.0 0.685916 1c96000783680ce2 27.008244 \n", + "18 1.0 1.001987 188b8a2690b77569 27.007400 \n", + "19 1.0 0.161205 1c1800034e77b166 27.001960 \n", + "20 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", + "21 1.0 0.690287 1a16000df5456083 27.026500 \n", + "22 1.0 3.039863 1a1329402f2206ed 27.069355 \n", + "23 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", + "24 1.0 0.033313 1642835a069e4fb9 27.025700 \n", + "25 1.0 0.072236 146857274f45ac2c 27.180640 \n", + "26 1.0 2.084016 164237aca8296f1c 27.012601 \n", + "27 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "28 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", + "29 1.0 0.384602 126b001c1226e666 27.004100 \n", + "30 1.0 1.361363 123200132a4f0053 27.001000 \n", + "31 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", + "32 1.0 2.109182 126b0037bf192dd9 27.004000 \n", + "33 1.0 0.384074 121c61dad76dde64 27.002200 \n", + "34 1.0 0.470362 1232000391a2d9da 27.009000 \n", + "35 1.0 0.517238 124d61659aa64c7a 27.076500 \n", + "36 1.0 1.394561 12200009ea038849 27.017500 \n", + "37 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", + "38 1.0 0.156104 100fe6c78281bfae 27.130969 \n", + "39 1.0 0.177793 10da0014d0866a1a 27.006200 \n", + "40 1.0 0.379170 10111463352887a3 27.001100 \n", + "41 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", + "42 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "43 1.0 1.240973 101010806c3bfec2 30.005000 \n", + "44 1.0 0.675790 100d40c8c30375f9 30.025167 \n", + "45 1.0 0.525286 20058216259db392 30.010000 \n", + "46 1.0 0.169038 d0db3663848642f5 30.068900 \n", + "47 1.0 0.348562 d4481db8a1682303 30.007660 \n", + "48 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", + "49 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", + "50 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", + "51 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", + "52 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", + "53 1.0 0.329434 d88f00142c1483c1 30.002000 \n", + "54 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "55 1.0 0.287231 d8a48cee009b608c 30.006550 \n", + "56 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", + "57 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", + "58 1.0 0.895507 300b000932aead3a 30.007862 \n", + "59 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", "\n", " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "2 https://explorer.ergoplatform.com/en/blocks/58... \n", - "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", - "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", - "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", - "8 https://explorer.ergoplatform.com/en/blocks/22... \n", - "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", - "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", - "11 https://explorer.ergoplatform.com/en/blocks/17... \n", - "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", - "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "14 https://explorer.ergoplatform.com/en/blocks/92... \n", - "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", - "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "18 https://explorer.ergoplatform.com/en/blocks/40... \n", - "19 https://explorer.ergoplatform.com/en/blocks/32... \n", - "20 https://explorer.ergoplatform.com/en/blocks/02... \n", - "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", - "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", - "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", - "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "25 https://explorer.ergoplatform.com/en/blocks/32... \n", - "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", - "27 https://explorer.ergoplatform.com/en/blocks/79... \n", - "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", - "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", - "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", - "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "32 https://explorer.ergoplatform.com/en/blocks/39... \n", - "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "34 https://explorer.ergoplatform.com/en/blocks/10... \n", - "35 https://explorer.ergoplatform.com/en/blocks/db... \n", - "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "37 https://explorer.ergoplatform.com/en/blocks/91... \n", - "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", - "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", - "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", - "41 https://explorer.ergoplatform.com/en/blocks/00... \n", - "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", - "43 https://explorer.ergoplatform.com/en/blocks/85... \n", - "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", - "45 https://explorer.ergoplatform.com/en/blocks/48... \n", - "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", - "47 https://explorer.ergoplatform.com/en/blocks/20... \n", - "48 https://explorer.ergoplatform.com/en/blocks/27... \n", - "49 https://explorer.ergoplatform.com/en/blocks/33... \n", - "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "53 https://explorer.ergoplatform.com/en/blocks/83... \n", - "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "0 https://explorer.ergoplatform.com/en/blocks/7a... \n", + "1 https://explorer.ergoplatform.com/en/blocks/44... \n", + "2 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "3 https://explorer.ergoplatform.com/en/blocks/88... \n", + "4 https://explorer.ergoplatform.com/en/blocks/93... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "6 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "7 https://explorer.ergoplatform.com/en/blocks/58... \n", + "8 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "9 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "10 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "11 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "12 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/22... \n", + "14 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "15 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "16 https://explorer.ergoplatform.com/en/blocks/17... \n", + "17 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "18 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "19 https://explorer.ergoplatform.com/en/blocks/92... \n", + "20 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "21 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "22 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "23 https://explorer.ergoplatform.com/en/blocks/40... \n", + "24 https://explorer.ergoplatform.com/en/blocks/32... \n", + "25 https://explorer.ergoplatform.com/en/blocks/02... \n", + "26 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "27 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "28 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "30 https://explorer.ergoplatform.com/en/blocks/32... \n", + "31 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "32 https://explorer.ergoplatform.com/en/blocks/79... \n", + "33 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "34 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "35 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "36 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "37 https://explorer.ergoplatform.com/en/blocks/39... \n", + "38 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "39 https://explorer.ergoplatform.com/en/blocks/10... \n", + "40 https://explorer.ergoplatform.com/en/blocks/db... \n", + "41 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "42 https://explorer.ergoplatform.com/en/blocks/91... \n", + "43 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "44 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "45 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "46 https://explorer.ergoplatform.com/en/blocks/00... \n", + "47 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "48 https://explorer.ergoplatform.com/en/blocks/85... \n", + "49 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "50 https://explorer.ergoplatform.com/en/blocks/48... \n", + "51 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "52 https://explorer.ergoplatform.com/en/blocks/20... \n", + "53 https://explorer.ergoplatform.com/en/blocks/27... \n", + "54 https://explorer.ergoplatform.com/en/blocks/33... \n", + "55 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "56 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "57 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "58 https://explorer.ergoplatform.com/en/blocks/83... \n", + "59 https://explorer.ergoplatform.com/en/blocks/47... \n", "\n", " hash \\\n", - "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", - "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", - "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", - "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", - "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", - "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", - "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", - "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", - "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", - "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", - "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", - "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", - "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", - "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", - "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", - "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", - "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", - "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", - "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", - "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", - "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", - "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", - "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", - "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", - "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", - "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", - "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", - "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", - "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", - "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", - "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", - "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", - "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", - "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", - "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", - "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", - "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", - "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", - "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", - "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", - "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", - "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", - "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", - "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", - "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", - "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", - "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", - "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", - "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", - "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", - "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", - "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", - "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", - "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", - "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "0 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... \n", + "1 44167cd62e4406f726826b15a0fcf6e843fade6c445102... \n", + "2 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... \n", + "3 881144c4c46b08e39d59817863da508be56c215eafb8eb... \n", + "4 9395fce740c65f238690a5639a2938e0bce75b8a28b065... \n", + "5 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "6 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "7 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "8 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "9 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "10 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "11 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "12 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "13 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "14 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "15 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "16 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "17 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "18 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "19 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "20 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "21 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "22 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "23 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "24 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "25 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "26 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "27 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "28 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "29 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "30 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "31 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "32 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "33 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "34 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "35 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "36 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "37 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "38 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "39 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "40 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "41 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "42 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "43 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "44 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "45 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "46 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "47 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "48 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "49 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "50 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "51 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "52 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "53 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "54 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "55 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "56 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "57 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "58 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "59 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", "\n", " miner source \\\n", - "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "0 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", - "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", - "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", - "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", - "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "2 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "3 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "4 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... ErgoSigmanauts \n", + "5 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "6 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "7 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "8 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "9 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "10 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "11 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "12 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "14 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "15 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "16 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "17 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "18 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", - "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "20 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "21 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "22 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "23 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "24 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "25 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "26 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "27 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "28 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "29 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "30 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "31 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "32 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "33 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "34 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "35 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "36 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", - "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "38 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "39 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "40 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "41 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "42 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "43 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "44 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "45 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "46 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "47 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "48 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "49 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "50 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "51 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "52 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "53 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "54 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "55 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "56 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "57 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "58 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "59 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", "\n", " time_found \n", - "0 2024-04-28 03:06:52 \n", - "1 2024-04-28 02:55:03 \n", - "2 2024-04-27 07:59:45 \n", - "3 2024-04-27 06:54:45 \n", - "4 2024-04-27 04:31:16 \n", - "5 2024-04-26 18:24:58 \n", - "6 2024-04-26 16:00:40 \n", - "7 2024-04-23 22:19:10 \n", - "8 2024-04-23 19:17:03 \n", - "9 2024-04-23 19:06:49 \n", - "10 2024-04-23 12:18:50 \n", - "11 2024-04-22 22:07:16 \n", - "12 2024-04-22 18:11:34 \n", - "13 2024-04-22 09:12:21 \n", - "14 2024-04-21 18:58:55 \n", - "15 2024-04-21 16:57:09 \n", - "16 2024-04-21 15:49:03 \n", - "17 2024-04-21 05:49:18 \n", - "18 2024-04-19 17:13:40 \n", - "19 2024-04-19 10:06:26 \n", - "20 2024-04-19 09:41:15 \n", - "21 2024-04-19 08:45:52 \n", - "22 2024-04-18 09:31:37 \n", - "23 2024-04-18 08:01:31 \n", - "24 2024-04-18 03:11:44 \n", - "25 2024-04-17 21:39:45 \n", - "26 2024-04-17 01:03:11 \n", - "27 2024-04-16 20:53:07 \n", - "28 2024-04-15 13:26:36 \n", - "29 2024-04-15 05:58:59 \n", - "30 2024-04-14 19:46:29 \n", - "31 2024-04-14 07:53:57 \n", - "32 2024-04-13 01:40:15 \n", - "33 2024-04-10 21:52:48 \n", - "34 2024-04-10 16:45:58 \n", - "35 2024-04-10 11:38:14 \n", - "36 2024-04-09 23:57:08 \n", - "37 2024-04-08 14:35:09 \n", - "38 2024-04-07 19:55:43 \n", - "39 2024-04-06 00:11:43 \n", - "40 2024-04-04 23:46:44 \n", - "41 2024-04-04 01:40:19 \n", - "42 2024-04-03 18:22:18 \n", - "43 2024-04-03 04:57:28 \n", - "44 2024-03-31 07:40:29 \n", - "45 2024-03-31 06:53:18 \n", - "46 2024-03-31 02:11:27 \n", - "47 2024-03-29 22:22:38 \n", - "48 2024-03-29 04:26:22 \n", - "49 2024-03-28 16:41:02 \n", - "50 2024-03-28 15:40:37 \n", - "51 2024-03-28 08:26:49 \n", - "52 2024-03-27 18:07:25 \n", - "53 2024-03-19 04:19:20 \n", - "54 2024-03-16 06:45:27 " + "0 2024-04-29 08:20:04 \n", + "1 2024-04-28 23:18:22 \n", + "2 2024-04-28 17:16:48 \n", + "3 2024-04-28 16:09:49 \n", + "4 2024-04-28 12:59:58 \n", + "5 2024-04-28 03:06:52 \n", + "6 2024-04-28 02:55:03 \n", + "7 2024-04-27 07:59:45 \n", + "8 2024-04-27 06:54:45 \n", + "9 2024-04-27 04:31:16 \n", + "10 2024-04-26 18:24:58 \n", + "11 2024-04-26 16:00:40 \n", + "12 2024-04-23 22:19:10 \n", + "13 2024-04-23 19:17:03 \n", + "14 2024-04-23 19:06:49 \n", + "15 2024-04-23 12:18:50 \n", + "16 2024-04-22 22:07:16 \n", + "17 2024-04-22 18:11:34 \n", + "18 2024-04-22 09:12:21 \n", + "19 2024-04-21 18:58:55 \n", + "20 2024-04-21 16:57:09 \n", + "21 2024-04-21 15:49:03 \n", + "22 2024-04-21 05:49:18 \n", + "23 2024-04-19 17:13:40 \n", + "24 2024-04-19 10:06:26 \n", + "25 2024-04-19 09:41:15 \n", + "26 2024-04-19 08:45:52 \n", + "27 2024-04-18 09:31:37 \n", + "28 2024-04-18 08:01:31 \n", + "29 2024-04-18 03:11:44 \n", + "30 2024-04-17 21:39:45 \n", + "31 2024-04-17 01:03:11 \n", + "32 2024-04-16 20:53:07 \n", + "33 2024-04-15 13:26:36 \n", + "34 2024-04-15 05:58:59 \n", + "35 2024-04-14 19:46:29 \n", + "36 2024-04-14 07:53:57 \n", + "37 2024-04-13 01:40:15 \n", + "38 2024-04-10 21:52:48 \n", + "39 2024-04-10 16:45:58 \n", + "40 2024-04-10 11:38:14 \n", + "41 2024-04-09 23:57:08 \n", + "42 2024-04-08 14:35:09 \n", + "43 2024-04-07 19:55:43 \n", + "44 2024-04-06 00:11:43 \n", + "45 2024-04-04 23:46:44 \n", + "46 2024-04-04 01:40:19 \n", + "47 2024-04-03 18:22:18 \n", + "48 2024-04-03 04:57:28 \n", + "49 2024-03-31 07:40:29 \n", + "50 2024-03-31 06:53:18 \n", + "51 2024-03-31 02:11:27 \n", + "52 2024-03-29 22:22:38 \n", + "53 2024-03-29 04:26:22 \n", + "54 2024-03-28 16:41:02 \n", + "55 2024-03-28 15:40:37 \n", + "56 2024-03-28 08:26:49 \n", + "57 2024-03-27 18:07:25 \n", + "58 2024-03-19 04:19:20 \n", + "59 2024-03-16 06:45:27 " ] }, "execution_count": 18, @@ -3218,7 +3438,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -3262,6 +3482,86 @@ " \n", " 0\n", " ErgoSigmanauts\n", + " 1253410\n", + " 354831.655250\n", + " confirmed\n", + " 1.0\n", + " 1.045866\n", + " 580c001f31e4fd3a\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/7a...\n", + " 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...\n", + " 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...\n", + " ErgoSigmanauts\n", + " 2024-04-29 08:20:04\n", + " \n", + " \n", + " 1\n", + " ErgoSigmanauts\n", + " 1253118\n", + " 362089.481987\n", + " confirmed\n", + " 1.0\n", + " 0.647874\n", + " 50239669e1ac4af8\n", + " 27.000000\n", + " https://explorer.ergoplatform.com/en/blocks/44...\n", + " 44167cd62e4406f726826b15a0fcf6e843fade6c445102...\n", + " 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...\n", + " ErgoSigmanauts\n", + " 2024-04-28 23:18:22\n", + " \n", + " \n", + " 2\n", + " ErgoSigmanauts\n", + " 1252956\n", + " 390351.076394\n", + " confirmed\n", + " 1.0\n", + " 0.112517\n", + " 57f9f469dba977c3\n", + " 27.009200\n", + " https://explorer.ergoplatform.com/en/blocks/d0...\n", + " d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...\n", + " 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...\n", + " ErgoSigmanauts\n", + " 2024-04-28 17:16:48\n", + " \n", + " \n", + " 3\n", + " ErgoSigmanauts\n", + " 1252929\n", + " 390351.076394\n", + " confirmed\n", + " 1.0\n", + " 0.313074\n", + " 5016a01340d6b9ba\n", + " 27.653129\n", + " https://explorer.ergoplatform.com/en/blocks/88...\n", + " 881144c4c46b08e39d59817863da508be56c215eafb8eb...\n", + " 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...\n", + " ErgoSigmanauts\n", + " 2024-04-28 16:09:49\n", + " \n", + " \n", + " 4\n", + " ErgoSigmanauts\n", + " 1252840\n", + " 350627.704840\n", + " confirmed\n", + " 1.0\n", + " 0.964228\n", + " 57f1000efc558ff1\n", + " 27.019200\n", + " https://explorer.ergoplatform.com/en/blocks/93...\n", + " 9395fce740c65f238690a5639a2938e0bce75b8a28b065...\n", + " 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...\n", + " ErgoSigmanauts\n", + " 2024-04-28 12:59:58\n", + " \n", + " \n", + " 5\n", + " ErgoSigmanauts\n", " 1252559\n", " 422881.658950\n", " confirmed\n", @@ -3276,7 +3576,7 @@ " 2024-04-28 03:06:52\n", " \n", " \n", - " 1\n", + " 6\n", " ErgoSigmanauts\n", " 1252553\n", " 422881.658950\n", @@ -3292,7 +3592,7 @@ " 2024-04-28 02:55:03\n", " \n", " \n", - " 2\n", + " 7\n", " ErgoSigmanauts\n", " 1251978\n", " 380358.285885\n", @@ -3308,7 +3608,7 @@ " 2024-04-27 07:59:45\n", " \n", " \n", - " 3\n", + " 8\n", " ErgoSigmanauts\n", " 1251939\n", " 366775.443497\n", @@ -3324,7 +3624,7 @@ " 2024-04-27 06:54:45\n", " \n", " \n", - " 4\n", + " 9\n", " ErgoSigmanauts\n", " 1251871\n", " 366775.443497\n", @@ -3340,7 +3640,7 @@ " 2024-04-27 04:31:16\n", " \n", " \n", - " 5\n", + " 10\n", " ErgoSigmanauts\n", " 1251567\n", " 388383.156547\n", @@ -3356,7 +3656,7 @@ " 2024-04-26 18:24:58\n", " \n", " \n", - " 6\n", + " 11\n", " ErgoSigmanauts\n", " 1251499\n", " 388383.156547\n", @@ -3372,7 +3672,7 @@ " 2024-04-26 16:00:40\n", " \n", " \n", - " 7\n", + " 12\n", " ErgoSigmanauts\n", " 1249527\n", " 315887.249576\n", @@ -3388,7 +3688,7 @@ " 2024-04-23 22:19:10\n", " \n", " \n", - " 8\n", + " 13\n", " ErgoSigmanauts\n", " 1249440\n", " 315887.249576\n", @@ -3404,7 +3704,7 @@ " 2024-04-23 19:17:03\n", " \n", " \n", - " 9\n", + " 14\n", " ErgoSigmanauts\n", " 1249432\n", " 315887.249576\n", @@ -3420,7 +3720,7 @@ " 2024-04-23 19:06:49\n", " \n", " \n", - " 10\n", + " 15\n", " ErgoSigmanauts\n", " 1249230\n", " 361687.597350\n", @@ -3436,7 +3736,7 @@ " 2024-04-23 12:18:50\n", " \n", " \n", - " 11\n", + " 16\n", " ErgoSigmanauts\n", " 1248838\n", " 426627.604763\n", @@ -3452,7 +3752,7 @@ " 2024-04-22 22:07:16\n", " \n", " \n", - " 12\n", + " 17\n", " ErgoSigmanauts\n", " 1248716\n", " 402639.913195\n", @@ -3468,7 +3768,7 @@ " 2024-04-22 18:11:34\n", " \n", " \n", - " 13\n", + " 18\n", " ErgoSigmanauts\n", " 1248443\n", " 380709.272335\n", @@ -3484,7 +3784,7 @@ " 2024-04-22 09:12:21\n", " \n", " \n", - " 14\n", + " 19\n", " ErgoSigmanauts\n", " 1248031\n", " 396231.066521\n", @@ -3500,7 +3800,7 @@ " 2024-04-21 18:58:55\n", " \n", " \n", - " 15\n", + " 20\n", " ErgoSigmanauts\n", " 1247949\n", " 334193.979483\n", @@ -3516,7 +3816,7 @@ " 2024-04-21 16:57:09\n", " \n", " \n", - " 16\n", + " 21\n", " ErgoSigmanauts\n", " 1247906\n", " 334193.979483\n", @@ -3532,7 +3832,7 @@ " 2024-04-21 15:49:03\n", " \n", " \n", - " 17\n", + " 22\n", " ErgoSigmanauts\n", " 1247634\n", " 390680.078087\n", @@ -3548,7 +3848,7 @@ " 2024-04-21 05:49:18\n", " \n", " \n", - " 18\n", + " 23\n", " ErgoSigmanauts\n", " 1246555\n", " 371421.349703\n", @@ -3564,7 +3864,7 @@ " 2024-04-19 17:13:40\n", " \n", " \n", - " 19\n", + " 24\n", " ErgoSigmanauts\n", " 1246329\n", " 338457.841118\n", @@ -3580,7 +3880,7 @@ " 2024-04-19 10:06:26\n", " \n", " \n", - " 20\n", + " 25\n", " ErgoSigmanauts\n", " 1246316\n", " 338457.841118\n", @@ -3596,7 +3896,7 @@ " 2024-04-19 09:41:15\n", " \n", " \n", - " 21\n", + " 26\n", " ErgoSigmanauts\n", " 1246282\n", " 338457.841118\n", @@ -3612,7 +3912,7 @@ " 2024-04-19 08:45:52\n", " \n", " \n", - " 22\n", + " 27\n", " ErgoSigmanauts\n", " 1245573\n", " 345942.822277\n", @@ -3628,7 +3928,7 @@ " 2024-04-18 09:31:37\n", " \n", " \n", - " 23\n", + " 28\n", " ErgoSigmanauts\n", " 1245528\n", " 323130.127436\n", @@ -3644,7 +3944,7 @@ " 2024-04-18 08:01:31\n", " \n", " \n", - " 24\n", + " 29\n", " ErgoSigmanauts\n", " 1245375\n", " 343213.854779\n", @@ -3660,7 +3960,7 @@ " 2024-04-18 03:11:44\n", " \n", " \n", - " 25\n", + " 30\n", " ErgoSigmanauts\n", " 1245219\n", " 385248.184230\n", @@ -3676,7 +3976,7 @@ " 2024-04-17 21:39:45\n", " \n", " \n", - " 26\n", + " 31\n", " ErgoSigmanauts\n", " 1244611\n", " 350337.673747\n", @@ -3692,7 +3992,7 @@ " 2024-04-17 01:03:11\n", " \n", " \n", - " 27\n", + " 32\n", " ErgoSigmanauts\n", " 1244487\n", " 347763.784750\n", @@ -3708,7 +4008,7 @@ " 2024-04-16 20:53:07\n", " \n", " \n", - " 28\n", + " 33\n", " ErgoSigmanauts\n", " 1243556\n", " 346496.758155\n", @@ -3724,7 +4024,7 @@ " 2024-04-15 13:26:36\n", " \n", " \n", - " 29\n", + " 34\n", " ErgoSigmanauts\n", " 1243309\n", " 317174.205629\n", @@ -3740,7 +4040,7 @@ " 2024-04-15 05:58:59\n", " \n", " \n", - " 30\n", + " 35\n", " ErgoSigmanauts\n", " 1243018\n", " 353518.612001\n", @@ -3756,7 +4056,7 @@ " 2024-04-14 19:46:29\n", " \n", " \n", - " 31\n", + " 36\n", " ErgoSigmanauts\n", " 1242682\n", " 379295.328612\n", @@ -3772,7 +4072,7 @@ " 2024-04-14 07:53:57\n", " \n", " \n", - " 32\n", + " 37\n", " ErgoSigmanauts\n", " 1241796\n", " 370202.405388\n", @@ -3788,7 +4088,7 @@ " 2024-04-13 01:40:15\n", " \n", " \n", - " 33\n", + " 38\n", " ErgoSigmanauts\n", " 1240237\n", " 406987.879722\n", @@ -3804,7 +4104,7 @@ " 2024-04-10 21:52:48\n", " \n", " \n", - " 34\n", + " 39\n", " ErgoSigmanauts\n", " 1240101\n", " 411836.853619\n", @@ -3820,7 +4120,7 @@ " 2024-04-10 16:45:58\n", " \n", " \n", - " 35\n", + " 40\n", " ErgoSigmanauts\n", " 1239922\n", " 414752.684611\n", @@ -3836,7 +4136,7 @@ " 2024-04-10 11:38:14\n", " \n", " \n", - " 36\n", + " 41\n", " ErgoSigmanauts\n", " 1239612\n", " 395105.076364\n", @@ -3852,7 +4152,7 @@ " 2024-04-09 23:57:08\n", " \n", " \n", - " 37\n", + " 42\n", " ErgoSigmanauts\n", " 1238592\n", " 386279.122336\n", @@ -3868,7 +4168,7 @@ " 2024-04-08 14:35:09\n", " \n", " \n", - " 38\n", + " 43\n", " ErgoSigmanauts\n", " 1238040\n", " 399941.963788\n", @@ -3884,7 +4184,7 @@ " 2024-04-07 19:55:43\n", " \n", " \n", - " 39\n", + " 44\n", " ErgoSigmanauts\n", " 1236735\n", " 385434.149366\n", @@ -3900,7 +4200,7 @@ " 2024-04-06 00:11:43\n", " \n", " \n", - " 40\n", + " 45\n", " ErgoSigmanauts\n", " 1235990\n", " 387916.169692\n", @@ -3916,7 +4216,7 @@ " 2024-04-04 23:46:44\n", " \n", " \n", - " 41\n", + " 46\n", " ErgoSigmanauts\n", " 1235365\n", " 466883.931372\n", @@ -3932,7 +4232,7 @@ " 2024-04-04 01:40:19\n", " \n", " \n", - " 42\n", + " 47\n", " ErgoSigmanauts\n", " 1235136\n", " 433886.497034\n", @@ -3948,7 +4248,7 @@ " 2024-04-03 18:22:18\n", " \n", " \n", - " 43\n", + " 48\n", " ErgoSigmanauts\n", " 1234733\n", " 425282.536901\n", @@ -3964,7 +4264,7 @@ " 2024-04-03 04:57:28\n", " \n", " \n", - " 44\n", + " 49\n", " ErgoSigmanauts\n", " 1232662\n", " 385380.245572\n", @@ -3980,7 +4280,7 @@ " 2024-03-31 07:40:29\n", " \n", " \n", - " 45\n", + " 50\n", " ErgoSigmanauts\n", " 1232628\n", " 363957.496239\n", @@ -3996,7 +4296,7 @@ " 2024-03-31 06:53:18\n", " \n", " \n", - " 46\n", + " 51\n", " ErgoSigmanauts\n", " 1232487\n", " 360630.583506\n", @@ -4012,7 +4312,7 @@ " 2024-03-31 02:11:27\n", " \n", " \n", - " 47\n", + " 52\n", " ErgoSigmanauts\n", " 1231651\n", " 367785.409859\n", @@ -4028,7 +4328,7 @@ " 2024-03-29 22:22:38\n", " \n", " \n", - " 48\n", + " 53\n", " ErgoSigmanauts\n", " 1231144\n", " 405099.842403\n", @@ -4044,7 +4344,7 @@ " 2024-03-29 04:26:22\n", " \n", " \n", - " 49\n", + " 54\n", " ErgoSigmanauts\n", " 1230782\n", " 360986.500966\n", @@ -4060,7 +4360,7 @@ " 2024-03-28 16:41:02\n", " \n", " \n", - " 50\n", + " 55\n", " ErgoSigmanauts\n", " 1230749\n", " 360986.500966\n", @@ -4076,7 +4376,7 @@ " 2024-03-28 15:40:37\n", " \n", " \n", - " 51\n", + " 56\n", " ErgoSigmanauts\n", " 1230547\n", " 434381.378191\n", @@ -4092,7 +4392,7 @@ " 2024-03-28 08:26:49\n", " \n", " \n", - " 52\n", + " 57\n", " ErgoSigmanauts\n", " 1230104\n", " 347635.796935\n", @@ -4108,7 +4408,7 @@ " 2024-03-27 18:07:25\n", " \n", " \n", - " 53\n", + " 58\n", " ErgoSigmanauts\n", " 1223980\n", " 416310.690227\n", @@ -4124,7 +4424,7 @@ " 2024-03-19 04:19:20\n", " \n", " \n", - " 54\n", + " 59\n", " ErgoSigmanauts\n", " 1221911\n", " 421209.622611\n", @@ -4145,346 +4445,376 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.658950 confirmed \n", - "1 ErgoSigmanauts 1252553 422881.658950 confirmed \n", - "2 ErgoSigmanauts 1251978 380358.285885 confirmed \n", - "3 ErgoSigmanauts 1251939 366775.443497 confirmed \n", - "4 ErgoSigmanauts 1251871 366775.443497 confirmed \n", - "5 ErgoSigmanauts 1251567 388383.156547 confirmed \n", - "6 ErgoSigmanauts 1251499 388383.156547 confirmed \n", - "7 ErgoSigmanauts 1249527 315887.249576 confirmed \n", - "8 ErgoSigmanauts 1249440 315887.249576 confirmed \n", - "9 ErgoSigmanauts 1249432 315887.249576 confirmed \n", - "10 ErgoSigmanauts 1249230 361687.597350 confirmed \n", - "11 ErgoSigmanauts 1248838 426627.604763 confirmed \n", - "12 ErgoSigmanauts 1248716 402639.913195 confirmed \n", - "13 ErgoSigmanauts 1248443 380709.272335 confirmed \n", - "14 ErgoSigmanauts 1248031 396231.066521 confirmed \n", - "15 ErgoSigmanauts 1247949 334193.979483 confirmed \n", - "16 ErgoSigmanauts 1247906 334193.979483 confirmed \n", - "17 ErgoSigmanauts 1247634 390680.078087 confirmed \n", - "18 ErgoSigmanauts 1246555 371421.349703 confirmed \n", - "19 ErgoSigmanauts 1246329 338457.841118 confirmed \n", - "20 ErgoSigmanauts 1246316 338457.841118 confirmed \n", - "21 ErgoSigmanauts 1246282 338457.841118 confirmed \n", - "22 ErgoSigmanauts 1245573 345942.822277 confirmed \n", - "23 ErgoSigmanauts 1245528 323130.127436 confirmed \n", - "24 ErgoSigmanauts 1245375 343213.854779 confirmed \n", - "25 ErgoSigmanauts 1245219 385248.184230 confirmed \n", - "26 ErgoSigmanauts 1244611 350337.673747 confirmed \n", - "27 ErgoSigmanauts 1244487 347763.784750 confirmed \n", - "28 ErgoSigmanauts 1243556 346496.758155 confirmed \n", - "29 ErgoSigmanauts 1243309 317174.205629 confirmed \n", - "30 ErgoSigmanauts 1243018 353518.612001 confirmed \n", - "31 ErgoSigmanauts 1242682 379295.328612 confirmed \n", - "32 ErgoSigmanauts 1241796 370202.405388 confirmed \n", - "33 ErgoSigmanauts 1240237 406987.879722 confirmed \n", - "34 ErgoSigmanauts 1240101 411836.853619 confirmed \n", - "35 ErgoSigmanauts 1239922 414752.684611 confirmed \n", - "36 ErgoSigmanauts 1239612 395105.076364 confirmed \n", - "37 ErgoSigmanauts 1238592 386279.122336 confirmed \n", - "38 ErgoSigmanauts 1238040 399941.963788 confirmed \n", - "39 ErgoSigmanauts 1236735 385434.149366 confirmed \n", - "40 ErgoSigmanauts 1235990 387916.169692 confirmed \n", - "41 ErgoSigmanauts 1235365 466883.931372 confirmed \n", - "42 ErgoSigmanauts 1235136 433886.497034 confirmed \n", - "43 ErgoSigmanauts 1234733 425282.536901 confirmed \n", - "44 ErgoSigmanauts 1232662 385380.245572 confirmed \n", - "45 ErgoSigmanauts 1232628 363957.496239 confirmed \n", - "46 ErgoSigmanauts 1232487 360630.583506 confirmed \n", - "47 ErgoSigmanauts 1231651 367785.409859 confirmed \n", - "48 ErgoSigmanauts 1231144 405099.842403 confirmed \n", - "49 ErgoSigmanauts 1230782 360986.500966 confirmed \n", - "50 ErgoSigmanauts 1230749 360986.500966 confirmed \n", - "51 ErgoSigmanauts 1230547 434381.378191 confirmed \n", - "52 ErgoSigmanauts 1230104 347635.796935 confirmed \n", - "53 ErgoSigmanauts 1223980 416310.690227 confirmed \n", - "54 ErgoSigmanauts 1221911 421209.622611 confirmed \n", + "0 ErgoSigmanauts 1253410 354831.655250 confirmed \n", + "1 ErgoSigmanauts 1253118 362089.481987 confirmed \n", + "2 ErgoSigmanauts 1252956 390351.076394 confirmed \n", + "3 ErgoSigmanauts 1252929 390351.076394 confirmed \n", + "4 ErgoSigmanauts 1252840 350627.704840 confirmed \n", + "5 ErgoSigmanauts 1252559 422881.658950 confirmed \n", + "6 ErgoSigmanauts 1252553 422881.658950 confirmed \n", + "7 ErgoSigmanauts 1251978 380358.285885 confirmed \n", + "8 ErgoSigmanauts 1251939 366775.443497 confirmed \n", + "9 ErgoSigmanauts 1251871 366775.443497 confirmed \n", + "10 ErgoSigmanauts 1251567 388383.156547 confirmed \n", + "11 ErgoSigmanauts 1251499 388383.156547 confirmed \n", + "12 ErgoSigmanauts 1249527 315887.249576 confirmed \n", + "13 ErgoSigmanauts 1249440 315887.249576 confirmed \n", + "14 ErgoSigmanauts 1249432 315887.249576 confirmed \n", + "15 ErgoSigmanauts 1249230 361687.597350 confirmed \n", + "16 ErgoSigmanauts 1248838 426627.604763 confirmed \n", + "17 ErgoSigmanauts 1248716 402639.913195 confirmed \n", + "18 ErgoSigmanauts 1248443 380709.272335 confirmed \n", + "19 ErgoSigmanauts 1248031 396231.066521 confirmed \n", + "20 ErgoSigmanauts 1247949 334193.979483 confirmed \n", + "21 ErgoSigmanauts 1247906 334193.979483 confirmed \n", + "22 ErgoSigmanauts 1247634 390680.078087 confirmed \n", + "23 ErgoSigmanauts 1246555 371421.349703 confirmed \n", + "24 ErgoSigmanauts 1246329 338457.841118 confirmed \n", + "25 ErgoSigmanauts 1246316 338457.841118 confirmed \n", + "26 ErgoSigmanauts 1246282 338457.841118 confirmed \n", + "27 ErgoSigmanauts 1245573 345942.822277 confirmed \n", + "28 ErgoSigmanauts 1245528 323130.127436 confirmed \n", + "29 ErgoSigmanauts 1245375 343213.854779 confirmed \n", + "30 ErgoSigmanauts 1245219 385248.184230 confirmed \n", + "31 ErgoSigmanauts 1244611 350337.673747 confirmed \n", + "32 ErgoSigmanauts 1244487 347763.784750 confirmed \n", + "33 ErgoSigmanauts 1243556 346496.758155 confirmed \n", + "34 ErgoSigmanauts 1243309 317174.205629 confirmed \n", + "35 ErgoSigmanauts 1243018 353518.612001 confirmed \n", + "36 ErgoSigmanauts 1242682 379295.328612 confirmed \n", + "37 ErgoSigmanauts 1241796 370202.405388 confirmed \n", + "38 ErgoSigmanauts 1240237 406987.879722 confirmed \n", + "39 ErgoSigmanauts 1240101 411836.853619 confirmed \n", + "40 ErgoSigmanauts 1239922 414752.684611 confirmed \n", + "41 ErgoSigmanauts 1239612 395105.076364 confirmed \n", + "42 ErgoSigmanauts 1238592 386279.122336 confirmed \n", + "43 ErgoSigmanauts 1238040 399941.963788 confirmed \n", + "44 ErgoSigmanauts 1236735 385434.149366 confirmed \n", + "45 ErgoSigmanauts 1235990 387916.169692 confirmed \n", + "46 ErgoSigmanauts 1235365 466883.931372 confirmed \n", + "47 ErgoSigmanauts 1235136 433886.497034 confirmed \n", + "48 ErgoSigmanauts 1234733 425282.536901 confirmed \n", + "49 ErgoSigmanauts 1232662 385380.245572 confirmed \n", + "50 ErgoSigmanauts 1232628 363957.496239 confirmed \n", + "51 ErgoSigmanauts 1232487 360630.583506 confirmed \n", + "52 ErgoSigmanauts 1231651 367785.409859 confirmed \n", + "53 ErgoSigmanauts 1231144 405099.842403 confirmed \n", + "54 ErgoSigmanauts 1230782 360986.500966 confirmed \n", + "55 ErgoSigmanauts 1230749 360986.500966 confirmed \n", + "56 ErgoSigmanauts 1230547 434381.378191 confirmed \n", + "57 ErgoSigmanauts 1230104 347635.796935 confirmed \n", + "58 ErgoSigmanauts 1223980 416310.690227 confirmed \n", + "59 ErgoSigmanauts 1221911 421209.622611 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 1.0 0.017700 56dcc160776a8a71 27.022100 \n", - "1 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", - "2 1.0 0.112525 50a3000448228642 27.001000 \n", - "3 1.0 0.244779 502468dac3622052 27.018200 \n", - "4 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", - "5 1.0 0.261117 555f000b343364e4 27.005100 \n", - "6 1.0 6.396079 507971cae2ee4a18 27.004200 \n", - "7 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", - "8 1.0 0.019216 50187b62b18da535 27.010000 \n", - "9 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", - "10 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", - "11 1.0 0.351294 186e549eb8340f12 27.034400 \n", - "12 1.0 0.685916 1c96000783680ce2 27.008244 \n", - "13 1.0 1.001987 188b8a2690b77569 27.007400 \n", - "14 1.0 0.161205 1c1800034e77b166 27.001960 \n", - "15 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", - "16 1.0 0.690287 1a16000df5456083 27.026500 \n", - "17 1.0 3.039863 1a1329402f2206ed 27.069355 \n", - "18 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", - "19 1.0 0.033313 1642835a069e4fb9 27.025700 \n", - "20 1.0 0.072236 146857274f45ac2c 27.180640 \n", - "21 1.0 2.084016 164237aca8296f1c 27.012601 \n", - "22 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", - "23 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", - "24 1.0 0.384602 126b001c1226e666 27.004100 \n", - "25 1.0 1.361363 123200132a4f0053 27.001000 \n", - "26 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", - "27 1.0 2.109182 126b0037bf192dd9 27.004000 \n", - "28 1.0 0.384074 121c61dad76dde64 27.002200 \n", - "29 1.0 0.470362 1232000391a2d9da 27.009000 \n", - "30 1.0 0.517238 124d61659aa64c7a 27.076500 \n", - "31 1.0 1.394561 12200009ea038849 27.017500 \n", - "32 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", - "33 1.0 0.156104 100fe6c78281bfae 27.130969 \n", - "34 1.0 0.177793 10da0014d0866a1a 27.006200 \n", - "35 1.0 0.379170 10111463352887a3 27.001100 \n", - "36 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", - "37 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", - "38 1.0 1.240973 101010806c3bfec2 30.005000 \n", - "39 1.0 0.675790 100d40c8c30375f9 30.025167 \n", - "40 1.0 0.525286 20058216259db392 30.010000 \n", - "41 1.0 0.169038 d0db3663848642f5 30.068900 \n", - "42 1.0 0.348562 d4481db8a1682303 30.007660 \n", - "43 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", - "44 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", - "45 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", - "46 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", - "47 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", - "48 1.0 0.329434 d88f00142c1483c1 30.002000 \n", - "49 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", - "50 1.0 0.287231 d8a48cee009b608c 30.006550 \n", - "51 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", - "52 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", - "53 1.0 0.895507 300b000932aead3a 30.007862 \n", - "54 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", + "0 1.0 1.045866 580c001f31e4fd3a 27.000000 \n", + "1 1.0 0.647874 50239669e1ac4af8 27.000000 \n", + "2 1.0 0.112517 57f9f469dba977c3 27.009200 \n", + "3 1.0 0.313074 5016a01340d6b9ba 27.653129 \n", + "4 1.0 0.964228 57f1000efc558ff1 27.019200 \n", + "5 1.0 0.017700 56dcc160776a8a71 27.022100 \n", + "6 1.0 1.856882 50230ed620a8fa0b 27.000000 \n", + "7 1.0 0.112525 50a3000448228642 27.001000 \n", + "8 1.0 0.244779 502468dac3622052 27.018200 \n", + "9 1.0 1.039931 50d8fd9c81187de2 27.008800 \n", + "10 1.0 0.261117 555f000b343364e4 27.005100 \n", + "11 1.0 6.396079 507971cae2ee4a18 27.004200 \n", + "12 1.0 0.341527 50164a42c64cc4f1 27.015100 \n", + "13 1.0 0.019216 50187b62b18da535 27.010000 \n", + "14 1.0 0.639227 5057d49b44b4ed21 27.012200 \n", + "15 1.0 1.262430 1bdb3e4628f615be 27.006300 \n", + "16 1.0 0.351294 186e549eb8340f12 27.034400 \n", + "17 1.0 0.685916 1c96000783680ce2 27.008244 \n", + "18 1.0 1.001987 188b8a2690b77569 27.007400 \n", + "19 1.0 0.161205 1c1800034e77b166 27.001960 \n", + "20 1.0 0.094927 1bf4a728749d7de8 27.001000 \n", + "21 1.0 0.690287 1a16000df5456083 27.026500 \n", + "22 1.0 3.039863 1a1329402f2206ed 27.069355 \n", + "23 1.0 0.535275 12fc6a2219199f2a 27.012000 \n", + "24 1.0 0.033313 1642835a069e4fb9 27.025700 \n", + "25 1.0 0.072236 146857274f45ac2c 27.180640 \n", + "26 1.0 2.084016 164237aca8296f1c 27.012601 \n", + "27 1.0 0.116772 12a8cc865d1eb6b1 27.001253 \n", + "28 1.0 0.361345 126a0007f2a34c7c 27.000000 \n", + "29 1.0 0.384602 126b001c1226e666 27.004100 \n", + "30 1.0 1.361363 123200132a4f0053 27.001000 \n", + "31 1.0 0.304060 13309b8b1531ac3d 27.004400 \n", + "32 1.0 2.109182 126b0037bf192dd9 27.004000 \n", + "33 1.0 0.384074 121c61dad76dde64 27.002200 \n", + "34 1.0 0.470362 1232000391a2d9da 27.009000 \n", + "35 1.0 0.517238 124d61659aa64c7a 27.076500 \n", + "36 1.0 1.394561 12200009ea038849 27.017500 \n", + "37 1.0 1.980514 10c71b4fad01f31c 27.052025 \n", + "38 1.0 0.156104 100fe6c78281bfae 27.130969 \n", + "39 1.0 0.177793 10da0014d0866a1a 27.006200 \n", + "40 1.0 0.379170 10111463352887a3 27.001100 \n", + "41 1.0 1.270331 10c7e206ff3da33e 27.029100 \n", + "42 1.0 0.608459 10c72dc2ea84ee3e 27.002000 \n", + "43 1.0 1.240973 101010806c3bfec2 30.005000 \n", + "44 1.0 0.675790 100d40c8c30375f9 30.025167 \n", + "45 1.0 0.525286 20058216259db392 30.010000 \n", + "46 1.0 0.169038 d0db3663848642f5 30.068900 \n", + "47 1.0 0.348562 d4481db8a1682303 30.007660 \n", + "48 1.0 1.926869 d43cfb8db6bde057 30.008316 \n", + "49 1.0 0.025904 d88e000ab46f7e8a 30.000000 \n", + "50 1.0 0.237322 d10ffd6af9eca406 30.000000 \n", + "51 1.0 1.012745 dee5be1bf40de25e 30.013800 \n", + "52 1.0 0.466819 daa5cc820eedd3d9 30.001500 \n", + "53 1.0 0.329434 d88f00142c1483c1 30.002000 \n", + "54 1.0 0.030553 d00cd5ba5f2b167c 30.088260 \n", + "55 1.0 0.287231 d8a48cee009b608c 30.006550 \n", + "56 1.0 0.797385 d6c1191549ab2f07 30.027600 \n", + "57 1.0 4.752955 d153e8105c7c0b57 30.001000 \n", + "58 1.0 0.895507 300b000932aead3a 30.007862 \n", + "59 1.0 2.867494 705c89a6a4e552cf 30.007100 \n", "\n", " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "2 https://explorer.ergoplatform.com/en/blocks/58... \n", - "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", - "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", - "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", - "8 https://explorer.ergoplatform.com/en/blocks/22... \n", - "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", - "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", - "11 https://explorer.ergoplatform.com/en/blocks/17... \n", - "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", - "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "14 https://explorer.ergoplatform.com/en/blocks/92... \n", - "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", - "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "18 https://explorer.ergoplatform.com/en/blocks/40... \n", - "19 https://explorer.ergoplatform.com/en/blocks/32... \n", - "20 https://explorer.ergoplatform.com/en/blocks/02... \n", - "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", - "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", - "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", - "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "25 https://explorer.ergoplatform.com/en/blocks/32... \n", - "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", - "27 https://explorer.ergoplatform.com/en/blocks/79... \n", - "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", - "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", - "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", - "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "32 https://explorer.ergoplatform.com/en/blocks/39... \n", - "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "34 https://explorer.ergoplatform.com/en/blocks/10... \n", - "35 https://explorer.ergoplatform.com/en/blocks/db... \n", - "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "37 https://explorer.ergoplatform.com/en/blocks/91... \n", - "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", - "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", - "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", - "41 https://explorer.ergoplatform.com/en/blocks/00... \n", - "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", - "43 https://explorer.ergoplatform.com/en/blocks/85... \n", - "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", - "45 https://explorer.ergoplatform.com/en/blocks/48... \n", - "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", - "47 https://explorer.ergoplatform.com/en/blocks/20... \n", - "48 https://explorer.ergoplatform.com/en/blocks/27... \n", - "49 https://explorer.ergoplatform.com/en/blocks/33... \n", - "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "53 https://explorer.ergoplatform.com/en/blocks/83... \n", - "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "0 https://explorer.ergoplatform.com/en/blocks/7a... \n", + "1 https://explorer.ergoplatform.com/en/blocks/44... \n", + "2 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "3 https://explorer.ergoplatform.com/en/blocks/88... \n", + "4 https://explorer.ergoplatform.com/en/blocks/93... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "6 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "7 https://explorer.ergoplatform.com/en/blocks/58... \n", + "8 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "9 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "10 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "11 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "12 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/22... \n", + "14 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "15 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "16 https://explorer.ergoplatform.com/en/blocks/17... \n", + "17 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "18 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "19 https://explorer.ergoplatform.com/en/blocks/92... \n", + "20 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "21 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "22 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "23 https://explorer.ergoplatform.com/en/blocks/40... \n", + "24 https://explorer.ergoplatform.com/en/blocks/32... \n", + "25 https://explorer.ergoplatform.com/en/blocks/02... \n", + "26 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "27 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "28 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "30 https://explorer.ergoplatform.com/en/blocks/32... \n", + "31 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "32 https://explorer.ergoplatform.com/en/blocks/79... \n", + "33 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "34 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "35 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "36 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "37 https://explorer.ergoplatform.com/en/blocks/39... \n", + "38 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "39 https://explorer.ergoplatform.com/en/blocks/10... \n", + "40 https://explorer.ergoplatform.com/en/blocks/db... \n", + "41 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "42 https://explorer.ergoplatform.com/en/blocks/91... \n", + "43 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "44 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "45 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "46 https://explorer.ergoplatform.com/en/blocks/00... \n", + "47 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "48 https://explorer.ergoplatform.com/en/blocks/85... \n", + "49 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "50 https://explorer.ergoplatform.com/en/blocks/48... \n", + "51 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "52 https://explorer.ergoplatform.com/en/blocks/20... \n", + "53 https://explorer.ergoplatform.com/en/blocks/27... \n", + "54 https://explorer.ergoplatform.com/en/blocks/33... \n", + "55 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "56 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "57 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "58 https://explorer.ergoplatform.com/en/blocks/83... \n", + "59 https://explorer.ergoplatform.com/en/blocks/47... \n", "\n", " hash \\\n", - "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", - "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", - "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", - "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", - "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", - "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", - "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", - "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", - "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", - "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", - "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", - "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", - "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", - "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", - "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", - "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", - "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", - "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", - "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", - "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", - "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", - "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", - "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", - "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", - "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", - "25 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", - "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", - "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", - "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", - "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", - "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", - "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", - "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", - "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", - "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", - "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", - "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", - "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", - "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", - "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", - "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", - "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", - "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", - "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", - "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", - "45 48044bb6835294495eb17744326b63f3183a629ab44767... \n", - "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", - "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", - "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", - "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", - "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", - "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", - "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", - "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", - "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", + "0 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... \n", + "1 44167cd62e4406f726826b15a0fcf6e843fade6c445102... \n", + "2 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... \n", + "3 881144c4c46b08e39d59817863da508be56c215eafb8eb... \n", + "4 9395fce740c65f238690a5639a2938e0bce75b8a28b065... \n", + "5 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... \n", + "6 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... \n", + "7 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... \n", + "8 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... \n", + "9 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... \n", + "10 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... \n", + "11 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... \n", + "12 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... \n", + "13 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... \n", + "14 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... \n", + "15 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... \n", + "16 177fd26d67b248b8fa2b0f734be71628114fa12249403a... \n", + "17 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... \n", + "18 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... \n", + "19 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... \n", + "20 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... \n", + "21 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... \n", + "22 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... \n", + "23 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... \n", + "24 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... \n", + "25 023d3db990a609673fb2143fdfd110f959928864ee5ba0... \n", + "26 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... \n", + "27 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... \n", + "28 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... \n", + "29 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... \n", + "30 32df796eeeeb916349df58e3263011fc13e2064202638d... \n", + "31 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... \n", + "32 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... \n", + "33 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... \n", + "34 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... \n", + "35 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... \n", + "36 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... \n", + "37 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... \n", + "38 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... \n", + "39 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... \n", + "40 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... \n", + "41 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... \n", + "42 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... \n", + "43 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... \n", + "44 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... \n", + "45 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... \n", + "46 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... \n", + "47 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... \n", + "48 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... \n", + "49 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... \n", + "50 48044bb6835294495eb17744326b63f3183a629ab44767... \n", + "51 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... \n", + "52 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... \n", + "53 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... \n", + "54 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... \n", + "55 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... \n", + "56 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... \n", + "57 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... \n", + "58 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... \n", + "59 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... \n", "\n", " miner source \\\n", - "0 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "0 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "1 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "2 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "3 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "4 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", - "5 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "6 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "7 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", - "8 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "9 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", - "10 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", - "11 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "12 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "2 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "3 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", + "4 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... ErgoSigmanauts \n", + "5 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... ErgoSigmanauts \n", + "6 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "7 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "8 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "9 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... ErgoSigmanauts \n", + "10 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "11 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "12 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... ErgoSigmanauts \n", "13 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", - "14 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "15 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "16 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "17 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "18 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "14 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... ErgoSigmanauts \n", + "15 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... ErgoSigmanauts \n", + "16 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "17 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... ErgoSigmanauts \n", + "18 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... ErgoSigmanauts \n", "19 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "20 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", - "21 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", - "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "23 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "24 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "25 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "27 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "29 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "30 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", - "31 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "32 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "33 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "34 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", - "35 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "36 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "20 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "21 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "22 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "23 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "24 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "25 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... ErgoSigmanauts \n", + "26 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... ErgoSigmanauts \n", + "27 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "28 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "29 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "30 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "31 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "32 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "33 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "34 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "35 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... ErgoSigmanauts \n", + "36 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", "37 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", - "38 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", - "39 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "40 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "41 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", - "42 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "43 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "44 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "45 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", - "46 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", - "47 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "48 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", - "49 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", - "50 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", - "51 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "52 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", - "53 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", - "54 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", + "38 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "39 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... ErgoSigmanauts \n", + "40 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "41 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "42 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... ErgoSigmanauts \n", + "43 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... ErgoSigmanauts \n", + "44 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "45 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "46 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... ErgoSigmanauts \n", + "47 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "48 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "49 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "50 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... ErgoSigmanauts \n", + "51 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... ErgoSigmanauts \n", + "52 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "53 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... ErgoSigmanauts \n", + "54 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... ErgoSigmanauts \n", + "55 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... ErgoSigmanauts \n", + "56 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "57 9fYvQMsMN3NNaw33cAFnRdyHy1DpxtxfADvGqUV3ocLptw... ErgoSigmanauts \n", + "58 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... ErgoSigmanauts \n", + "59 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... ErgoSigmanauts \n", "\n", " time_found \n", - "0 2024-04-28 03:06:52 \n", - "1 2024-04-28 02:55:03 \n", - "2 2024-04-27 07:59:45 \n", - "3 2024-04-27 06:54:45 \n", - "4 2024-04-27 04:31:16 \n", - "5 2024-04-26 18:24:58 \n", - "6 2024-04-26 16:00:40 \n", - "7 2024-04-23 22:19:10 \n", - "8 2024-04-23 19:17:03 \n", - "9 2024-04-23 19:06:49 \n", - "10 2024-04-23 12:18:50 \n", - "11 2024-04-22 22:07:16 \n", - "12 2024-04-22 18:11:34 \n", - "13 2024-04-22 09:12:21 \n", - "14 2024-04-21 18:58:55 \n", - "15 2024-04-21 16:57:09 \n", - "16 2024-04-21 15:49:03 \n", - "17 2024-04-21 05:49:18 \n", - "18 2024-04-19 17:13:40 \n", - "19 2024-04-19 10:06:26 \n", - "20 2024-04-19 09:41:15 \n", - "21 2024-04-19 08:45:52 \n", - "22 2024-04-18 09:31:37 \n", - "23 2024-04-18 08:01:31 \n", - "24 2024-04-18 03:11:44 \n", - "25 2024-04-17 21:39:45 \n", - "26 2024-04-17 01:03:11 \n", - "27 2024-04-16 20:53:07 \n", - "28 2024-04-15 13:26:36 \n", - "29 2024-04-15 05:58:59 \n", - "30 2024-04-14 19:46:29 \n", - "31 2024-04-14 07:53:57 \n", - "32 2024-04-13 01:40:15 \n", - "33 2024-04-10 21:52:48 \n", - "34 2024-04-10 16:45:58 \n", - "35 2024-04-10 11:38:14 \n", - "36 2024-04-09 23:57:08 \n", - "37 2024-04-08 14:35:09 \n", - "38 2024-04-07 19:55:43 \n", - "39 2024-04-06 00:11:43 \n", - "40 2024-04-04 23:46:44 \n", - "41 2024-04-04 01:40:19 \n", - "42 2024-04-03 18:22:18 \n", - "43 2024-04-03 04:57:28 \n", - "44 2024-03-31 07:40:29 \n", - "45 2024-03-31 06:53:18 \n", - "46 2024-03-31 02:11:27 \n", - "47 2024-03-29 22:22:38 \n", - "48 2024-03-29 04:26:22 \n", - "49 2024-03-28 16:41:02 \n", - "50 2024-03-28 15:40:37 \n", - "51 2024-03-28 08:26:49 \n", - "52 2024-03-27 18:07:25 \n", - "53 2024-03-19 04:19:20 \n", - "54 2024-03-16 06:45:27 " + "0 2024-04-29 08:20:04 \n", + "1 2024-04-28 23:18:22 \n", + "2 2024-04-28 17:16:48 \n", + "3 2024-04-28 16:09:49 \n", + "4 2024-04-28 12:59:58 \n", + "5 2024-04-28 03:06:52 \n", + "6 2024-04-28 02:55:03 \n", + "7 2024-04-27 07:59:45 \n", + "8 2024-04-27 06:54:45 \n", + "9 2024-04-27 04:31:16 \n", + "10 2024-04-26 18:24:58 \n", + "11 2024-04-26 16:00:40 \n", + "12 2024-04-23 22:19:10 \n", + "13 2024-04-23 19:17:03 \n", + "14 2024-04-23 19:06:49 \n", + "15 2024-04-23 12:18:50 \n", + "16 2024-04-22 22:07:16 \n", + "17 2024-04-22 18:11:34 \n", + "18 2024-04-22 09:12:21 \n", + "19 2024-04-21 18:58:55 \n", + "20 2024-04-21 16:57:09 \n", + "21 2024-04-21 15:49:03 \n", + "22 2024-04-21 05:49:18 \n", + "23 2024-04-19 17:13:40 \n", + "24 2024-04-19 10:06:26 \n", + "25 2024-04-19 09:41:15 \n", + "26 2024-04-19 08:45:52 \n", + "27 2024-04-18 09:31:37 \n", + "28 2024-04-18 08:01:31 \n", + "29 2024-04-18 03:11:44 \n", + "30 2024-04-17 21:39:45 \n", + "31 2024-04-17 01:03:11 \n", + "32 2024-04-16 20:53:07 \n", + "33 2024-04-15 13:26:36 \n", + "34 2024-04-15 05:58:59 \n", + "35 2024-04-14 19:46:29 \n", + "36 2024-04-14 07:53:57 \n", + "37 2024-04-13 01:40:15 \n", + "38 2024-04-10 21:52:48 \n", + "39 2024-04-10 16:45:58 \n", + "40 2024-04-10 11:38:14 \n", + "41 2024-04-09 23:57:08 \n", + "42 2024-04-08 14:35:09 \n", + "43 2024-04-07 19:55:43 \n", + "44 2024-04-06 00:11:43 \n", + "45 2024-04-04 23:46:44 \n", + "46 2024-04-04 01:40:19 \n", + "47 2024-04-03 18:22:18 \n", + "48 2024-04-03 04:57:28 \n", + "49 2024-03-31 07:40:29 \n", + "50 2024-03-31 06:53:18 \n", + "51 2024-03-31 02:11:27 \n", + "52 2024-03-29 22:22:38 \n", + "53 2024-03-29 04:26:22 \n", + "54 2024-03-28 16:41:02 \n", + "55 2024-03-28 15:40:37 \n", + "56 2024-03-28 08:26:49 \n", + "57 2024-03-27 18:07:25 \n", + "58 2024-03-19 04:19:20 \n", + "59 2024-03-16 06:45:27 " ] }, "execution_count": 19, @@ -4531,14 +4861,14 @@ { "data": { "text/plain": [ - "{'Pending Shares': 107.475,\n", + "{'Pending Shares': 208.313,\n", " 'Pending Balance': 0.0,\n", - " 'Total Paid': 282.143,\n", - " 'Paid Today': 4.996672475194,\n", + " 'Total Paid': 294.063,\n", + " 'Paid Today': 4.638893254129,\n", " 'Schema': 'PPLNS',\n", - " 'Price': 1.36,\n", - " 'Last Payment': '2024-04-28',\n", - " 'lastPaymentLink': 'https://explorer.ergoplatform.com/en/transactions/021f50ff0da413ddd34595ee6760558350ff96cf03a017429e96666dacb364a6'}" + " 'Price': 1.33,\n", + " 'Last Payment': '2024-04-29',\n", + " 'lastPaymentLink': 'https://explorer.ergoplatform.com/en/transactions/32a60bfa02c91a2bd6c8a010b682ab9e43dcd58b1a768f6fe9ac6595c9145c9c'}" ] }, "execution_count": 20, @@ -4630,15 +4960,31 @@ "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dict_keys(['pendingShares', 'pendingBalance', 'totalPaid', 'todayPaid', 'lastPayment', 'lastPaymentLink', 'Schema', 'Price'])\n" + ] + } + ], "source": [ "database = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db')\n", "database.connect()\n", "database.get_cursor()\n", "\n", - "database.delete_table('payment')\n", - "database.delete_table('live_worker')\n", - "database.delete_table('performance')\n", + "# database.delete_table('payment')\n", + "# database.delete_table('live_worker')\n", + "# database.delete_table('performance')\n", "database.create_table('payment', payment_headers)\n", "database.create_table('live_worker', live_worker_headers)\n", "database.create_table('performance', performance_headers)\n", @@ -4823,9 +5169,172 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "id": "f44984f1-404b-4546-9305-53601c503d4f", "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'created': '2024-04-29T19:56:34.604302Z',\n", + " 'workers': {'GRAYSPEAK': {'hashrate': 2201226604, 'sharesPerSecond': 0.075},\n", + " 'LAPLATAPEAK': {'hashrate': 323835960, 'sharesPerSecond': 0.055},\n", + " 'MT-MASSIVE': {'hashrate': 1057033456, 'sharesPerSecond': 0.078},\n", + " 'PIKESPEAK': {'hashrate': 1489246187, 'sharesPerSecond': 0.07}}}" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "miner = '9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'\n", + "url = '{}/{}/{}'.format(reader.base_api, 'miners', miner)\n", + "mining_data = reader.get_api_data(url)\n", + "live_performance = mining_data.pop('performance')\n", + "live_performance" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "a6ad9402-47ec-4fca-aa8a-9518f3c4080f", + "metadata": {}, + "outputs": [], + "source": [ + "def worker_to_df(data):\n", + " rows = []\n", + " total_hash = 0\n", + " total_shares = 0\n", + " for worker, details in data['workers'].items():\n", + " hashrate = round(details['hashrate'] / 1e6, 2)\n", + " shares = round(details['sharesPerSecond'], 2)\n", + " row = {\n", + " 'worker': worker,\n", + " 'hashrate': hashrate, #MH/s\n", + " 'shares_per_second': shares,\n", + " 'created': format_datetime(data['created'])\n", + " }\n", + " rows.append(row)\n", + " total_hash += hashrate\n", + " total_shares += shares\n", + "\n", + " totals = {'worker': 'totals',\n", + " 'hashrate': total_hash, #MH/s\n", + " 'shares_per_second': total_shares,\n", + " 'created': format_datetime(data['created'])\n", + " }\n", + " rows.append(totals)\n", + " \n", + " print(rows)\n", + " # Create DataFrame\n", + " return pd.DataFrame(rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "62ca44e7-ab37-47a9-a7cc-7b575899df04", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[{'worker': 'GRAYSPEAK', 'hashrate': 2201.23, 'shares_per_second': 0.07, 'created': '2024-04-29 19:56:34'}, {'worker': 'LAPLATAPEAK', 'hashrate': 323.84, 'shares_per_second': 0.06, 'created': '2024-04-29 19:56:34'}, {'worker': 'MT-MASSIVE', 'hashrate': 1057.03, 'shares_per_second': 0.08, 'created': '2024-04-29 19:56:34'}, {'worker': 'PIKESPEAK', 'hashrate': 1489.25, 'shares_per_second': 0.07, 'created': '2024-04-29 19:56:34'}, {'worker': 'totals', 'hashrate': 5071.35, 'shares_per_second': 0.28, 'created': '2024-04-29 19:56:34'}]\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
workerhashrateshares_per_secondcreated
0GRAYSPEAK2201.230.072024-04-29 19:56:34
1LAPLATAPEAK323.840.062024-04-29 19:56:34
2MT-MASSIVE1057.030.082024-04-29 19:56:34
3PIKESPEAK1489.250.072024-04-29 19:56:34
4totals5071.350.282024-04-29 19:56:34
\n", + "
" + ], + "text/plain": [ + " worker hashrate shares_per_second created\n", + "0 GRAYSPEAK 2201.23 0.07 2024-04-29 19:56:34\n", + "1 LAPLATAPEAK 323.84 0.06 2024-04-29 19:56:34\n", + "2 MT-MASSIVE 1057.03 0.08 2024-04-29 19:56:34\n", + "3 PIKESPEAK 1489.25 0.07 2024-04-29 19:56:34\n", + "4 totals 5071.35 0.28 2024-04-29 19:56:34" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "worker_to_df(live_performance)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "eda3bc88-ed55-4120-b052-8c59754ed14c", + "metadata": {}, "outputs": [], "source": [] } diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index 9c5ace3c..f0a418ae 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -27,6 +27,17 @@ "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Batch 1/1: Deleted up to 10 rows from stats\n", + "Batch 1/1: Deleted up to 10000 rows from block\n", + "Batch 1/1: Deleted up to 10000 rows from payment\n", + "Batch 1/1: Deleted up to 10000 rows from live_worker\n", + "Batch 1/1: Deleted up to 10000 rows from performance\n" + ] + }, { "data": { "text/plain": [ @@ -39,7 +50,7 @@ } ], "source": [ - "# db_sync.__delete_table__()\n", + "db_sync.__delete_table__()\n", "db_sync.__create_table__()" ] }, @@ -65,7 +76,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -109,6 +120,86 @@ " \n", " 0\n", " ErgoSigmanauts\n", + " 1253410\n", + " 354831.66\n", + " confirmed\n", + " 100\n", + " 1.05\n", + " 580c001f31e4fd3a\n", + " 27.00\n", + " https://explorer.ergoplatform.com/en/blocks/7a...\n", + " 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...\n", + " 9i8...SKz8K\n", + " ErgoSigmanauts\n", + " 2024-04-29 08:20:04\n", + " \n", + " \n", + " 1\n", + " ErgoSigmanauts\n", + " 1253118\n", + " 362089.48\n", + " confirmed\n", + " 100\n", + " 0.65\n", + " 50239669e1ac4af8\n", + " 27.00\n", + " https://explorer.ergoplatform.com/en/blocks/44...\n", + " 44167cd62e4406f726826b15a0fcf6e843fade6c445102...\n", + " 9i3...ZGLDL\n", + " ErgoSigmanauts\n", + " 2024-04-28 23:18:22\n", + " \n", + " \n", + " 2\n", + " ErgoSigmanauts\n", + " 1252956\n", + " 390351.08\n", + " confirmed\n", + " 100\n", + " 0.11\n", + " 57f9f469dba977c3\n", + " 27.01\n", + " https://explorer.ergoplatform.com/en/blocks/d0...\n", + " d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...\n", + " 9fx...n2ewV\n", + " ErgoSigmanauts\n", + " 2024-04-28 17:16:48\n", + " \n", + " \n", + " 3\n", + " ErgoSigmanauts\n", + " 1252929\n", + " 390351.08\n", + " confirmed\n", + " 100\n", + " 0.31\n", + " 5016a01340d6b9ba\n", + " 27.65\n", + " https://explorer.ergoplatform.com/en/blocks/88...\n", + " 881144c4c46b08e39d59817863da508be56c215eafb8eb...\n", + " 9fR...LUuxo\n", + " ErgoSigmanauts\n", + " 2024-04-28 16:09:49\n", + " \n", + " \n", + " 4\n", + " ErgoSigmanauts\n", + " 1252840\n", + " 350627.70\n", + " confirmed\n", + " 100\n", + " 0.96\n", + " 57f1000efc558ff1\n", + " 27.02\n", + " https://explorer.ergoplatform.com/en/blocks/93...\n", + " 9395fce740c65f238690a5639a2938e0bce75b8a28b065...\n", + " 9hN...TigVb\n", + " ErgoSigmanauts\n", + " 2024-04-28 12:59:58\n", + " \n", + " \n", + " 5\n", + " ErgoSigmanauts\n", " 1252559\n", " 422881.66\n", " confirmed\n", @@ -123,7 +214,7 @@ " 2024-04-28 03:06:52\n", " \n", " \n", - " 1\n", + " 6\n", " ErgoSigmanauts\n", " 1252553\n", " 422881.66\n", @@ -139,7 +230,7 @@ " 2024-04-28 02:55:03\n", " \n", " \n", - " 2\n", + " 7\n", " ErgoSigmanauts\n", " 1251978\n", " 380358.29\n", @@ -155,7 +246,7 @@ " 2024-04-27 07:59:45\n", " \n", " \n", - " 3\n", + " 8\n", " ErgoSigmanauts\n", " 1251939\n", " 366775.44\n", @@ -171,7 +262,7 @@ " 2024-04-27 06:54:45\n", " \n", " \n", - " 4\n", + " 9\n", " ErgoSigmanauts\n", " 1251871\n", " 366775.44\n", @@ -187,7 +278,7 @@ " 2024-04-27 04:31:16\n", " \n", " \n", - " 5\n", + " 10\n", " ErgoSigmanauts\n", " 1251567\n", " 388383.16\n", @@ -203,7 +294,7 @@ " 2024-04-26 18:24:58\n", " \n", " \n", - " 6\n", + " 11\n", " ErgoSigmanauts\n", " 1251499\n", " 388383.16\n", @@ -219,7 +310,7 @@ " 2024-04-26 16:00:40\n", " \n", " \n", - " 7\n", + " 12\n", " ErgoSigmanauts\n", " 1249527\n", " 315887.25\n", @@ -235,7 +326,7 @@ " 2024-04-23 22:19:10\n", " \n", " \n", - " 8\n", + " 13\n", " ErgoSigmanauts\n", " 1249440\n", " 315887.25\n", @@ -251,7 +342,7 @@ " 2024-04-23 19:17:03\n", " \n", " \n", - " 9\n", + " 14\n", " ErgoSigmanauts\n", " 1249432\n", " 315887.25\n", @@ -267,7 +358,7 @@ " 2024-04-23 19:06:49\n", " \n", " \n", - " 10\n", + " 15\n", " ErgoSigmanauts\n", " 1249230\n", " 361687.60\n", @@ -283,7 +374,7 @@ " 2024-04-23 12:18:50\n", " \n", " \n", - " 11\n", + " 16\n", " ErgoSigmanauts\n", " 1248838\n", " 426627.60\n", @@ -299,7 +390,7 @@ " 2024-04-22 22:07:16\n", " \n", " \n", - " 12\n", + " 17\n", " ErgoSigmanauts\n", " 1248716\n", " 402639.91\n", @@ -315,7 +406,7 @@ " 2024-04-22 18:11:34\n", " \n", " \n", - " 13\n", + " 18\n", " ErgoSigmanauts\n", " 1248443\n", " 380709.27\n", @@ -331,7 +422,7 @@ " 2024-04-22 09:12:21\n", " \n", " \n", - " 14\n", + " 19\n", " ErgoSigmanauts\n", " 1248031\n", " 396231.07\n", @@ -347,7 +438,7 @@ " 2024-04-21 18:58:55\n", " \n", " \n", - " 15\n", + " 20\n", " ErgoSigmanauts\n", " 1247949\n", " 334193.98\n", @@ -363,7 +454,7 @@ " 2024-04-21 16:57:09\n", " \n", " \n", - " 16\n", + " 21\n", " ErgoSigmanauts\n", " 1247906\n", " 334193.98\n", @@ -379,7 +470,7 @@ " 2024-04-21 15:49:03\n", " \n", " \n", - " 17\n", + " 22\n", " ErgoSigmanauts\n", " 1247634\n", " 390680.08\n", @@ -395,7 +486,7 @@ " 2024-04-21 05:49:18\n", " \n", " \n", - " 18\n", + " 23\n", " ErgoSigmanauts\n", " 1246555\n", " 371421.35\n", @@ -411,7 +502,7 @@ " 2024-04-19 17:13:40\n", " \n", " \n", - " 19\n", + " 24\n", " ErgoSigmanauts\n", " 1246329\n", " 338457.84\n", @@ -427,7 +518,7 @@ " 2024-04-19 10:06:26\n", " \n", " \n", - " 20\n", + " 25\n", " ErgoSigmanauts\n", " 1246316\n", " 338457.84\n", @@ -443,7 +534,7 @@ " 2024-04-19 09:41:15\n", " \n", " \n", - " 21\n", + " 26\n", " ErgoSigmanauts\n", " 1246282\n", " 338457.84\n", @@ -459,7 +550,7 @@ " 2024-04-19 08:45:52\n", " \n", " \n", - " 22\n", + " 27\n", " ErgoSigmanauts\n", " 1245573\n", " 345942.82\n", @@ -475,7 +566,7 @@ " 2024-04-18 09:31:37\n", " \n", " \n", - " 23\n", + " 28\n", " ErgoSigmanauts\n", " 1245528\n", " 323130.13\n", @@ -491,7 +582,7 @@ " 2024-04-18 08:01:31\n", " \n", " \n", - " 24\n", + " 29\n", " ErgoSigmanauts\n", " 1245375\n", " 343213.85\n", @@ -507,7 +598,7 @@ " 2024-04-18 03:11:44\n", " \n", " \n", - " 25\n", + " 30\n", " ErgoSigmanauts\n", " 1245219\n", " 385248.18\n", @@ -523,7 +614,7 @@ " 2024-04-17 21:39:45\n", " \n", " \n", - " 26\n", + " 31\n", " ErgoSigmanauts\n", " 1244611\n", " 350337.67\n", @@ -539,7 +630,7 @@ " 2024-04-17 01:03:11\n", " \n", " \n", - " 27\n", + " 32\n", " ErgoSigmanauts\n", " 1244487\n", " 347763.78\n", @@ -555,7 +646,7 @@ " 2024-04-16 20:53:07\n", " \n", " \n", - " 28\n", + " 33\n", " ErgoSigmanauts\n", " 1243556\n", " 346496.76\n", @@ -571,7 +662,7 @@ " 2024-04-15 13:26:36\n", " \n", " \n", - " 29\n", + " 34\n", " ErgoSigmanauts\n", " 1243309\n", " 317174.21\n", @@ -587,7 +678,7 @@ " 2024-04-15 05:58:59\n", " \n", " \n", - " 30\n", + " 35\n", " ErgoSigmanauts\n", " 1243018\n", " 353518.61\n", @@ -603,7 +694,7 @@ " 2024-04-14 19:46:29\n", " \n", " \n", - " 31\n", + " 36\n", " ErgoSigmanauts\n", " 1242682\n", " 379295.33\n", @@ -619,7 +710,7 @@ " 2024-04-14 07:53:57\n", " \n", " \n", - " 32\n", + " 37\n", " ErgoSigmanauts\n", " 1241796\n", " 370202.41\n", @@ -635,7 +726,7 @@ " 2024-04-13 01:40:15\n", " \n", " \n", - " 33\n", + " 38\n", " ErgoSigmanauts\n", " 1240237\n", " 406987.88\n", @@ -651,7 +742,7 @@ " 2024-04-10 21:52:48\n", " \n", " \n", - " 34\n", + " 39\n", " ErgoSigmanauts\n", " 1240101\n", " 411836.85\n", @@ -667,7 +758,7 @@ " 2024-04-10 16:45:58\n", " \n", " \n", - " 35\n", + " 40\n", " ErgoSigmanauts\n", " 1239922\n", " 414752.68\n", @@ -683,7 +774,7 @@ " 2024-04-10 11:38:14\n", " \n", " \n", - " 36\n", + " 41\n", " ErgoSigmanauts\n", " 1239612\n", " 395105.08\n", @@ -699,7 +790,7 @@ " 2024-04-09 23:57:08\n", " \n", " \n", - " 37\n", + " 42\n", " ErgoSigmanauts\n", " 1238592\n", " 386279.12\n", @@ -715,7 +806,7 @@ " 2024-04-08 14:35:09\n", " \n", " \n", - " 38\n", + " 43\n", " ErgoSigmanauts\n", " 1238040\n", " 399941.96\n", @@ -731,7 +822,7 @@ " 2024-04-07 19:55:43\n", " \n", " \n", - " 39\n", + " 44\n", " ErgoSigmanauts\n", " 1236735\n", " 385434.15\n", @@ -747,7 +838,7 @@ " 2024-04-06 00:11:43\n", " \n", " \n", - " 40\n", + " 45\n", " ErgoSigmanauts\n", " 1235990\n", " 387916.17\n", @@ -763,7 +854,7 @@ " 2024-04-04 23:46:44\n", " \n", " \n", - " 41\n", + " 46\n", " ErgoSigmanauts\n", " 1235365\n", " 466883.93\n", @@ -779,7 +870,7 @@ " 2024-04-04 01:40:19\n", " \n", " \n", - " 42\n", + " 47\n", " ErgoSigmanauts\n", " 1235136\n", " 433886.50\n", @@ -795,7 +886,7 @@ " 2024-04-03 18:22:18\n", " \n", " \n", - " 43\n", + " 48\n", " ErgoSigmanauts\n", " 1234733\n", " 425282.54\n", @@ -811,7 +902,7 @@ " 2024-04-03 04:57:28\n", " \n", " \n", - " 44\n", + " 49\n", " ErgoSigmanauts\n", " 1232662\n", " 385380.25\n", @@ -827,7 +918,7 @@ " 2024-03-31 07:40:29\n", " \n", " \n", - " 45\n", + " 50\n", " ErgoSigmanauts\n", " 1232628\n", " 363957.50\n", @@ -843,7 +934,7 @@ " 2024-03-31 06:53:18\n", " \n", " \n", - " 46\n", + " 51\n", " ErgoSigmanauts\n", " 1232487\n", " 360630.58\n", @@ -859,7 +950,7 @@ " 2024-03-31 02:11:27\n", " \n", " \n", - " 47\n", + " 52\n", " ErgoSigmanauts\n", " 1231651\n", " 367785.41\n", @@ -875,7 +966,7 @@ " 2024-03-29 22:22:38\n", " \n", " \n", - " 48\n", + " 53\n", " ErgoSigmanauts\n", " 1231144\n", " 405099.84\n", @@ -891,7 +982,7 @@ " 2024-03-29 04:26:22\n", " \n", " \n", - " 49\n", + " 54\n", " ErgoSigmanauts\n", " 1230782\n", " 360986.50\n", @@ -907,7 +998,7 @@ " 2024-03-28 16:41:02\n", " \n", " \n", - " 50\n", + " 55\n", " ErgoSigmanauts\n", " 1230749\n", " 360986.50\n", @@ -923,7 +1014,7 @@ " 2024-03-28 15:40:37\n", " \n", " \n", - " 51\n", + " 56\n", " ErgoSigmanauts\n", " 1230547\n", " 434381.38\n", @@ -939,7 +1030,7 @@ " 2024-03-28 08:26:49\n", " \n", " \n", - " 52\n", + " 57\n", " ErgoSigmanauts\n", " 1230104\n", " 347635.80\n", @@ -955,7 +1046,7 @@ " 2024-03-27 18:07:25\n", " \n", " \n", - " 53\n", + " 58\n", " ErgoSigmanauts\n", " 1223980\n", " 416310.69\n", @@ -971,7 +1062,7 @@ " 2024-03-19 04:19:20\n", " \n", " \n", - " 54\n", + " 59\n", " ErgoSigmanauts\n", " 1221911\n", " 421209.62\n", @@ -992,289 +1083,314 @@ ], "text/plain": [ " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1252559 422881.66 confirmed \n", - "1 ErgoSigmanauts 1252553 422881.66 confirmed \n", - "2 ErgoSigmanauts 1251978 380358.29 confirmed \n", - "3 ErgoSigmanauts 1251939 366775.44 confirmed \n", - "4 ErgoSigmanauts 1251871 366775.44 confirmed \n", - "5 ErgoSigmanauts 1251567 388383.16 confirmed \n", - "6 ErgoSigmanauts 1251499 388383.16 confirmed \n", - "7 ErgoSigmanauts 1249527 315887.25 confirmed \n", - "8 ErgoSigmanauts 1249440 315887.25 confirmed \n", - "9 ErgoSigmanauts 1249432 315887.25 confirmed \n", - "10 ErgoSigmanauts 1249230 361687.60 confirmed \n", - "11 ErgoSigmanauts 1248838 426627.60 confirmed \n", - "12 ErgoSigmanauts 1248716 402639.91 confirmed \n", - "13 ErgoSigmanauts 1248443 380709.27 confirmed \n", - "14 ErgoSigmanauts 1248031 396231.07 confirmed \n", - "15 ErgoSigmanauts 1247949 334193.98 confirmed \n", - "16 ErgoSigmanauts 1247906 334193.98 confirmed \n", - "17 ErgoSigmanauts 1247634 390680.08 confirmed \n", - "18 ErgoSigmanauts 1246555 371421.35 confirmed \n", - "19 ErgoSigmanauts 1246329 338457.84 confirmed \n", - "20 ErgoSigmanauts 1246316 338457.84 confirmed \n", - "21 ErgoSigmanauts 1246282 338457.84 confirmed \n", - "22 ErgoSigmanauts 1245573 345942.82 confirmed \n", - "23 ErgoSigmanauts 1245528 323130.13 confirmed \n", - "24 ErgoSigmanauts 1245375 343213.85 confirmed \n", - "25 ErgoSigmanauts 1245219 385248.18 confirmed \n", - "26 ErgoSigmanauts 1244611 350337.67 confirmed \n", - "27 ErgoSigmanauts 1244487 347763.78 confirmed \n", - "28 ErgoSigmanauts 1243556 346496.76 confirmed \n", - "29 ErgoSigmanauts 1243309 317174.21 confirmed \n", - "30 ErgoSigmanauts 1243018 353518.61 confirmed \n", - "31 ErgoSigmanauts 1242682 379295.33 confirmed \n", - "32 ErgoSigmanauts 1241796 370202.41 confirmed \n", - "33 ErgoSigmanauts 1240237 406987.88 confirmed \n", - "34 ErgoSigmanauts 1240101 411836.85 confirmed \n", - "35 ErgoSigmanauts 1239922 414752.68 confirmed \n", - "36 ErgoSigmanauts 1239612 395105.08 confirmed \n", - "37 ErgoSigmanauts 1238592 386279.12 confirmed \n", - "38 ErgoSigmanauts 1238040 399941.96 confirmed \n", - "39 ErgoSigmanauts 1236735 385434.15 confirmed \n", - "40 ErgoSigmanauts 1235990 387916.17 confirmed \n", - "41 ErgoSigmanauts 1235365 466883.93 confirmed \n", - "42 ErgoSigmanauts 1235136 433886.50 confirmed \n", - "43 ErgoSigmanauts 1234733 425282.54 confirmed \n", - "44 ErgoSigmanauts 1232662 385380.25 confirmed \n", - "45 ErgoSigmanauts 1232628 363957.50 confirmed \n", - "46 ErgoSigmanauts 1232487 360630.58 confirmed \n", - "47 ErgoSigmanauts 1231651 367785.41 confirmed \n", - "48 ErgoSigmanauts 1231144 405099.84 confirmed \n", - "49 ErgoSigmanauts 1230782 360986.50 confirmed \n", - "50 ErgoSigmanauts 1230749 360986.50 confirmed \n", - "51 ErgoSigmanauts 1230547 434381.38 confirmed \n", - "52 ErgoSigmanauts 1230104 347635.80 confirmed \n", - "53 ErgoSigmanauts 1223980 416310.69 confirmed \n", - "54 ErgoSigmanauts 1221911 421209.62 confirmed \n", + "0 ErgoSigmanauts 1253410 354831.66 confirmed \n", + "1 ErgoSigmanauts 1253118 362089.48 confirmed \n", + "2 ErgoSigmanauts 1252956 390351.08 confirmed \n", + "3 ErgoSigmanauts 1252929 390351.08 confirmed \n", + "4 ErgoSigmanauts 1252840 350627.70 confirmed \n", + "5 ErgoSigmanauts 1252559 422881.66 confirmed \n", + "6 ErgoSigmanauts 1252553 422881.66 confirmed \n", + "7 ErgoSigmanauts 1251978 380358.29 confirmed \n", + "8 ErgoSigmanauts 1251939 366775.44 confirmed \n", + "9 ErgoSigmanauts 1251871 366775.44 confirmed \n", + "10 ErgoSigmanauts 1251567 388383.16 confirmed \n", + "11 ErgoSigmanauts 1251499 388383.16 confirmed \n", + "12 ErgoSigmanauts 1249527 315887.25 confirmed \n", + "13 ErgoSigmanauts 1249440 315887.25 confirmed \n", + "14 ErgoSigmanauts 1249432 315887.25 confirmed \n", + "15 ErgoSigmanauts 1249230 361687.60 confirmed \n", + "16 ErgoSigmanauts 1248838 426627.60 confirmed \n", + "17 ErgoSigmanauts 1248716 402639.91 confirmed \n", + "18 ErgoSigmanauts 1248443 380709.27 confirmed \n", + "19 ErgoSigmanauts 1248031 396231.07 confirmed \n", + "20 ErgoSigmanauts 1247949 334193.98 confirmed \n", + "21 ErgoSigmanauts 1247906 334193.98 confirmed \n", + "22 ErgoSigmanauts 1247634 390680.08 confirmed \n", + "23 ErgoSigmanauts 1246555 371421.35 confirmed \n", + "24 ErgoSigmanauts 1246329 338457.84 confirmed \n", + "25 ErgoSigmanauts 1246316 338457.84 confirmed \n", + "26 ErgoSigmanauts 1246282 338457.84 confirmed \n", + "27 ErgoSigmanauts 1245573 345942.82 confirmed \n", + "28 ErgoSigmanauts 1245528 323130.13 confirmed \n", + "29 ErgoSigmanauts 1245375 343213.85 confirmed \n", + "30 ErgoSigmanauts 1245219 385248.18 confirmed \n", + "31 ErgoSigmanauts 1244611 350337.67 confirmed \n", + "32 ErgoSigmanauts 1244487 347763.78 confirmed \n", + "33 ErgoSigmanauts 1243556 346496.76 confirmed \n", + "34 ErgoSigmanauts 1243309 317174.21 confirmed \n", + "35 ErgoSigmanauts 1243018 353518.61 confirmed \n", + "36 ErgoSigmanauts 1242682 379295.33 confirmed \n", + "37 ErgoSigmanauts 1241796 370202.41 confirmed \n", + "38 ErgoSigmanauts 1240237 406987.88 confirmed \n", + "39 ErgoSigmanauts 1240101 411836.85 confirmed \n", + "40 ErgoSigmanauts 1239922 414752.68 confirmed \n", + "41 ErgoSigmanauts 1239612 395105.08 confirmed \n", + "42 ErgoSigmanauts 1238592 386279.12 confirmed \n", + "43 ErgoSigmanauts 1238040 399941.96 confirmed \n", + "44 ErgoSigmanauts 1236735 385434.15 confirmed \n", + "45 ErgoSigmanauts 1235990 387916.17 confirmed \n", + "46 ErgoSigmanauts 1235365 466883.93 confirmed \n", + "47 ErgoSigmanauts 1235136 433886.50 confirmed \n", + "48 ErgoSigmanauts 1234733 425282.54 confirmed \n", + "49 ErgoSigmanauts 1232662 385380.25 confirmed \n", + "50 ErgoSigmanauts 1232628 363957.50 confirmed \n", + "51 ErgoSigmanauts 1232487 360630.58 confirmed \n", + "52 ErgoSigmanauts 1231651 367785.41 confirmed \n", + "53 ErgoSigmanauts 1231144 405099.84 confirmed \n", + "54 ErgoSigmanauts 1230782 360986.50 confirmed \n", + "55 ErgoSigmanauts 1230749 360986.50 confirmed \n", + "56 ErgoSigmanauts 1230547 434381.38 confirmed \n", + "57 ErgoSigmanauts 1230104 347635.80 confirmed \n", + "58 ErgoSigmanauts 1223980 416310.69 confirmed \n", + "59 ErgoSigmanauts 1221911 421209.62 confirmed \n", "\n", " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 100 0.02 56dcc160776a8a71 27.02 \n", - "1 100 1.86 50230ed620a8fa0b 27.00 \n", - "2 100 0.11 50a3000448228642 27.00 \n", - "3 100 0.24 502468dac3622052 27.02 \n", - "4 100 1.04 50d8fd9c81187de2 27.01 \n", - "5 100 0.26 555f000b343364e4 27.01 \n", - "6 100 6.40 507971cae2ee4a18 27.00 \n", - "7 100 0.34 50164a42c64cc4f1 27.02 \n", - "8 100 0.02 50187b62b18da535 27.01 \n", - "9 100 0.64 5057d49b44b4ed21 27.01 \n", - "10 100 1.26 1bdb3e4628f615be 27.01 \n", - "11 100 0.35 186e549eb8340f12 27.03 \n", - "12 100 0.69 1c96000783680ce2 27.01 \n", - "13 100 1.00 188b8a2690b77569 27.01 \n", - "14 100 0.16 1c1800034e77b166 27.00 \n", - "15 100 0.09 1bf4a728749d7de8 27.00 \n", - "16 100 0.69 1a16000df5456083 27.03 \n", - "17 100 3.04 1a1329402f2206ed 27.07 \n", - "18 100 0.54 12fc6a2219199f2a 27.01 \n", - "19 100 0.03 1642835a069e4fb9 27.03 \n", - "20 100 0.07 146857274f45ac2c 27.18 \n", - "21 100 2.08 164237aca8296f1c 27.01 \n", - "22 100 0.12 12a8cc865d1eb6b1 27.00 \n", - "23 100 0.36 126a0007f2a34c7c 27.00 \n", - "24 100 0.38 126b001c1226e666 27.00 \n", - "25 100 1.36 123200132a4f0053 27.00 \n", - "26 100 0.30 13309b8b1531ac3d 27.00 \n", - "27 100 2.11 126b0037bf192dd9 27.00 \n", - "28 100 0.38 121c61dad76dde64 27.00 \n", - "29 100 0.47 1232000391a2d9da 27.01 \n", - "30 100 0.52 124d61659aa64c7a 27.08 \n", - "31 100 1.39 12200009ea038849 27.02 \n", - "32 100 1.98 10c71b4fad01f31c 27.05 \n", - "33 100 0.16 100fe6c78281bfae 27.13 \n", - "34 100 0.18 10da0014d0866a1a 27.01 \n", - "35 100 0.38 10111463352887a3 27.00 \n", - "36 100 1.27 10c7e206ff3da33e 27.03 \n", - "37 100 0.61 10c72dc2ea84ee3e 27.00 \n", - "38 100 1.24 101010806c3bfec2 30.00 \n", - "39 100 0.68 100d40c8c30375f9 30.03 \n", - "40 100 0.53 20058216259db392 30.01 \n", - "41 100 0.17 d0db3663848642f5 30.07 \n", - "42 100 0.35 d4481db8a1682303 30.01 \n", - "43 100 1.93 d43cfb8db6bde057 30.01 \n", - "44 100 0.03 d88e000ab46f7e8a 30.00 \n", - "45 100 0.24 d10ffd6af9eca406 30.00 \n", - "46 100 1.01 dee5be1bf40de25e 30.01 \n", - "47 100 0.47 daa5cc820eedd3d9 30.00 \n", - "48 100 0.33 d88f00142c1483c1 30.00 \n", - "49 100 0.03 d00cd5ba5f2b167c 30.09 \n", - "50 100 0.29 d8a48cee009b608c 30.01 \n", - "51 100 0.80 d6c1191549ab2f07 30.03 \n", - "52 100 4.75 d153e8105c7c0b57 30.00 \n", - "53 100 0.90 300b000932aead3a 30.01 \n", - "54 100 2.87 705c89a6a4e552cf 30.01 \n", + "0 100 1.05 580c001f31e4fd3a 27.00 \n", + "1 100 0.65 50239669e1ac4af8 27.00 \n", + "2 100 0.11 57f9f469dba977c3 27.01 \n", + "3 100 0.31 5016a01340d6b9ba 27.65 \n", + "4 100 0.96 57f1000efc558ff1 27.02 \n", + "5 100 0.02 56dcc160776a8a71 27.02 \n", + "6 100 1.86 50230ed620a8fa0b 27.00 \n", + "7 100 0.11 50a3000448228642 27.00 \n", + "8 100 0.24 502468dac3622052 27.02 \n", + "9 100 1.04 50d8fd9c81187de2 27.01 \n", + "10 100 0.26 555f000b343364e4 27.01 \n", + "11 100 6.40 507971cae2ee4a18 27.00 \n", + "12 100 0.34 50164a42c64cc4f1 27.02 \n", + "13 100 0.02 50187b62b18da535 27.01 \n", + "14 100 0.64 5057d49b44b4ed21 27.01 \n", + "15 100 1.26 1bdb3e4628f615be 27.01 \n", + "16 100 0.35 186e549eb8340f12 27.03 \n", + "17 100 0.69 1c96000783680ce2 27.01 \n", + "18 100 1.00 188b8a2690b77569 27.01 \n", + "19 100 0.16 1c1800034e77b166 27.00 \n", + "20 100 0.09 1bf4a728749d7de8 27.00 \n", + "21 100 0.69 1a16000df5456083 27.03 \n", + "22 100 3.04 1a1329402f2206ed 27.07 \n", + "23 100 0.54 12fc6a2219199f2a 27.01 \n", + "24 100 0.03 1642835a069e4fb9 27.03 \n", + "25 100 0.07 146857274f45ac2c 27.18 \n", + "26 100 2.08 164237aca8296f1c 27.01 \n", + "27 100 0.12 12a8cc865d1eb6b1 27.00 \n", + "28 100 0.36 126a0007f2a34c7c 27.00 \n", + "29 100 0.38 126b001c1226e666 27.00 \n", + "30 100 1.36 123200132a4f0053 27.00 \n", + "31 100 0.30 13309b8b1531ac3d 27.00 \n", + "32 100 2.11 126b0037bf192dd9 27.00 \n", + "33 100 0.38 121c61dad76dde64 27.00 \n", + "34 100 0.47 1232000391a2d9da 27.01 \n", + "35 100 0.52 124d61659aa64c7a 27.08 \n", + "36 100 1.39 12200009ea038849 27.02 \n", + "37 100 1.98 10c71b4fad01f31c 27.05 \n", + "38 100 0.16 100fe6c78281bfae 27.13 \n", + "39 100 0.18 10da0014d0866a1a 27.01 \n", + "40 100 0.38 10111463352887a3 27.00 \n", + "41 100 1.27 10c7e206ff3da33e 27.03 \n", + "42 100 0.61 10c72dc2ea84ee3e 27.00 \n", + "43 100 1.24 101010806c3bfec2 30.00 \n", + "44 100 0.68 100d40c8c30375f9 30.03 \n", + "45 100 0.53 20058216259db392 30.01 \n", + "46 100 0.17 d0db3663848642f5 30.07 \n", + "47 100 0.35 d4481db8a1682303 30.01 \n", + "48 100 1.93 d43cfb8db6bde057 30.01 \n", + "49 100 0.03 d88e000ab46f7e8a 30.00 \n", + "50 100 0.24 d10ffd6af9eca406 30.00 \n", + "51 100 1.01 dee5be1bf40de25e 30.01 \n", + "52 100 0.47 daa5cc820eedd3d9 30.00 \n", + "53 100 0.33 d88f00142c1483c1 30.00 \n", + "54 100 0.03 d00cd5ba5f2b167c 30.09 \n", + "55 100 0.29 d8a48cee009b608c 30.01 \n", + "56 100 0.80 d6c1191549ab2f07 30.03 \n", + "57 100 4.75 d153e8105c7c0b57 30.00 \n", + "58 100 0.90 300b000932aead3a 30.01 \n", + "59 100 2.87 705c89a6a4e552cf 30.01 \n", "\n", " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "1 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "2 https://explorer.ergoplatform.com/en/blocks/58... \n", - "3 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "4 https://explorer.ergoplatform.com/en/blocks/2b... \n", - "5 https://explorer.ergoplatform.com/en/blocks/f8... \n", - "6 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "7 https://explorer.ergoplatform.com/en/blocks/4f... \n", - "8 https://explorer.ergoplatform.com/en/blocks/22... \n", - "9 https://explorer.ergoplatform.com/en/blocks/ac... \n", - "10 https://explorer.ergoplatform.com/en/blocks/2f... \n", - "11 https://explorer.ergoplatform.com/en/blocks/17... \n", - "12 https://explorer.ergoplatform.com/en/blocks/5f... \n", - "13 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "14 https://explorer.ergoplatform.com/en/blocks/92... \n", - "15 https://explorer.ergoplatform.com/en/blocks/9a... \n", - "16 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "17 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "18 https://explorer.ergoplatform.com/en/blocks/40... \n", - "19 https://explorer.ergoplatform.com/en/blocks/32... \n", - "20 https://explorer.ergoplatform.com/en/blocks/02... \n", - "21 https://explorer.ergoplatform.com/en/blocks/b2... \n", - "22 https://explorer.ergoplatform.com/en/blocks/b3... \n", - "23 https://explorer.ergoplatform.com/en/blocks/2d... \n", - "24 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "25 https://explorer.ergoplatform.com/en/blocks/32... \n", - "26 https://explorer.ergoplatform.com/en/blocks/4a... \n", - "27 https://explorer.ergoplatform.com/en/blocks/79... \n", - "28 https://explorer.ergoplatform.com/en/blocks/d5... \n", - "29 https://explorer.ergoplatform.com/en/blocks/d3... \n", - "30 https://explorer.ergoplatform.com/en/blocks/a8... \n", - "31 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "32 https://explorer.ergoplatform.com/en/blocks/39... \n", - "33 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "34 https://explorer.ergoplatform.com/en/blocks/10... \n", - "35 https://explorer.ergoplatform.com/en/blocks/db... \n", - "36 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "37 https://explorer.ergoplatform.com/en/blocks/91... \n", - "38 https://explorer.ergoplatform.com/en/blocks/ed... \n", - "39 https://explorer.ergoplatform.com/en/blocks/f4... \n", - "40 https://explorer.ergoplatform.com/en/blocks/bd... \n", - "41 https://explorer.ergoplatform.com/en/blocks/00... \n", - "42 https://explorer.ergoplatform.com/en/blocks/ba... \n", - "43 https://explorer.ergoplatform.com/en/blocks/85... \n", - "44 https://explorer.ergoplatform.com/en/blocks/bf... \n", - "45 https://explorer.ergoplatform.com/en/blocks/48... \n", - "46 https://explorer.ergoplatform.com/en/blocks/0f... \n", - "47 https://explorer.ergoplatform.com/en/blocks/20... \n", - "48 https://explorer.ergoplatform.com/en/blocks/27... \n", - "49 https://explorer.ergoplatform.com/en/blocks/33... \n", - "50 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "51 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "52 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "53 https://explorer.ergoplatform.com/en/blocks/83... \n", - "54 https://explorer.ergoplatform.com/en/blocks/47... \n", + "0 https://explorer.ergoplatform.com/en/blocks/7a... \n", + "1 https://explorer.ergoplatform.com/en/blocks/44... \n", + "2 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "3 https://explorer.ergoplatform.com/en/blocks/88... \n", + "4 https://explorer.ergoplatform.com/en/blocks/93... \n", + "5 https://explorer.ergoplatform.com/en/blocks/f1... \n", + "6 https://explorer.ergoplatform.com/en/blocks/9d... \n", + "7 https://explorer.ergoplatform.com/en/blocks/58... \n", + "8 https://explorer.ergoplatform.com/en/blocks/a4... \n", + "9 https://explorer.ergoplatform.com/en/blocks/2b... \n", + "10 https://explorer.ergoplatform.com/en/blocks/f8... \n", + "11 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "12 https://explorer.ergoplatform.com/en/blocks/4f... \n", + "13 https://explorer.ergoplatform.com/en/blocks/22... \n", + "14 https://explorer.ergoplatform.com/en/blocks/ac... \n", + "15 https://explorer.ergoplatform.com/en/blocks/2f... \n", + "16 https://explorer.ergoplatform.com/en/blocks/17... \n", + "17 https://explorer.ergoplatform.com/en/blocks/5f... \n", + "18 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "19 https://explorer.ergoplatform.com/en/blocks/92... \n", + "20 https://explorer.ergoplatform.com/en/blocks/9a... \n", + "21 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "22 https://explorer.ergoplatform.com/en/blocks/c7... \n", + "23 https://explorer.ergoplatform.com/en/blocks/40... \n", + "24 https://explorer.ergoplatform.com/en/blocks/32... \n", + "25 https://explorer.ergoplatform.com/en/blocks/02... \n", + "26 https://explorer.ergoplatform.com/en/blocks/b2... \n", + "27 https://explorer.ergoplatform.com/en/blocks/b3... \n", + "28 https://explorer.ergoplatform.com/en/blocks/2d... \n", + "29 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "30 https://explorer.ergoplatform.com/en/blocks/32... \n", + "31 https://explorer.ergoplatform.com/en/blocks/4a... \n", + "32 https://explorer.ergoplatform.com/en/blocks/79... \n", + "33 https://explorer.ergoplatform.com/en/blocks/d5... \n", + "34 https://explorer.ergoplatform.com/en/blocks/d3... \n", + "35 https://explorer.ergoplatform.com/en/blocks/a8... \n", + "36 https://explorer.ergoplatform.com/en/blocks/2c... \n", + "37 https://explorer.ergoplatform.com/en/blocks/39... \n", + "38 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "39 https://explorer.ergoplatform.com/en/blocks/10... \n", + "40 https://explorer.ergoplatform.com/en/blocks/db... \n", + "41 https://explorer.ergoplatform.com/en/blocks/c0... \n", + "42 https://explorer.ergoplatform.com/en/blocks/91... \n", + "43 https://explorer.ergoplatform.com/en/blocks/ed... \n", + "44 https://explorer.ergoplatform.com/en/blocks/f4... \n", + "45 https://explorer.ergoplatform.com/en/blocks/bd... \n", + "46 https://explorer.ergoplatform.com/en/blocks/00... \n", + "47 https://explorer.ergoplatform.com/en/blocks/ba... \n", + "48 https://explorer.ergoplatform.com/en/blocks/85... \n", + "49 https://explorer.ergoplatform.com/en/blocks/bf... \n", + "50 https://explorer.ergoplatform.com/en/blocks/48... \n", + "51 https://explorer.ergoplatform.com/en/blocks/0f... \n", + "52 https://explorer.ergoplatform.com/en/blocks/20... \n", + "53 https://explorer.ergoplatform.com/en/blocks/27... \n", + "54 https://explorer.ergoplatform.com/en/blocks/33... \n", + "55 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "56 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "57 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "58 https://explorer.ergoplatform.com/en/blocks/83... \n", + "59 https://explorer.ergoplatform.com/en/blocks/47... \n", "\n", " hash miner \\\n", - "0 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... 9hS...8ygPH \n", - "1 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... 9i3...ZGLDL \n", - "2 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... 9i8...SKz8K \n", - "3 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... 9i3...ZGLDL \n", - "4 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... 9fx...n2ewV \n", - "5 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... 9g4...iopyX \n", - "6 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... 9fH...HbNJx \n", - "7 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... 9fR...LUuxo \n", - "8 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... 9f3...YsAik \n", - "9 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... 9eZ...FsakQ \n", - "10 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... 9gg...emSuT \n", - "11 177fd26d67b248b8fa2b0f734be71628114fa12249403a... 9iJ...j8zdC \n", - "12 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... 9f5...ceKR9 \n", - "13 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... 9f3...YsAik \n", - "14 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... 9h6...YYYAb \n", - "15 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... 9g4...iopyX \n", - "16 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... 9eh...ApYkk \n", - "17 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... 9eh...ApYkk \n", - "18 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... 9g4...iopyX \n", - "19 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... 9h6...YYYAb \n", - "20 023d3db990a609673fb2143fdfd110f959928864ee5ba0... 9fH...HbNJx \n", - "21 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... 9h6...YYYAb \n", - "22 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... 9gX...w5Yto \n", - "23 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... 9eh...ApYkk \n", - "24 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... 9eh...ApYkk \n", - "25 32df796eeeeb916349df58e3263011fc13e2064202638d... 9i8...SKz8K \n", - "26 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... 9gw...Xhqys \n", - "27 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... 9eh...ApYkk \n", - "28 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... 9g4...iopyX \n", - "29 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... 9i8...SKz8K \n", - "30 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... 9iJ...j8zdC \n", - "31 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... 9i8...SKz8K \n", - "32 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... 9ex...WFksx \n", - "33 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... 9i3...ZGLDL \n", - "34 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... 9f7...MxEbM \n", - "35 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... 9i3...ZGLDL \n", - "36 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... 9ex...WFksx \n", - "37 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... 9ex...WFksx \n", - "38 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... 9eZ...zb9tD \n", - "39 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... 9g4...iopyX \n", - "40 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... 9hT...fgbTV \n", - "41 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... 9i3...ZGLDL \n", - "42 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... 9g4...iopyX \n", - "43 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... 9gX...w5Yto \n", - "44 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... 9eh...ApYkk \n", - "45 48044bb6835294495eb17744326b63f3183a629ab44767... 9g4...iopyX \n", - "46 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... 9hT...fgbTV \n", - "47 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... 9eh...ApYkk \n", - "48 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... 9eh...ApYkk \n", - "49 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... 9gX...w5Yto \n", - "50 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... 9gw...Xhqys \n", - "51 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... 9fY...4HpcP \n", - "52 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... 9fY...4HpcP \n", - "53 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... 9i8...SKz8K \n", - "54 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... 9iQ...bL3fJ \n", + "0 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... 9i8...SKz8K \n", + "1 44167cd62e4406f726826b15a0fcf6e843fade6c445102... 9i3...ZGLDL \n", + "2 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... 9fx...n2ewV \n", + "3 881144c4c46b08e39d59817863da508be56c215eafb8eb... 9fR...LUuxo \n", + "4 9395fce740c65f238690a5639a2938e0bce75b8a28b065... 9hN...TigVb \n", + "5 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... 9hS...8ygPH \n", + "6 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... 9i3...ZGLDL \n", + "7 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... 9i8...SKz8K \n", + "8 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... 9i3...ZGLDL \n", + "9 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... 9fx...n2ewV \n", + "10 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... 9g4...iopyX \n", + "11 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... 9fH...HbNJx \n", + "12 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... 9fR...LUuxo \n", + "13 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... 9f3...YsAik \n", + "14 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... 9eZ...FsakQ \n", + "15 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... 9gg...emSuT \n", + "16 177fd26d67b248b8fa2b0f734be71628114fa12249403a... 9iJ...j8zdC \n", + "17 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... 9f5...ceKR9 \n", + "18 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... 9f3...YsAik \n", + "19 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... 9h6...YYYAb \n", + "20 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... 9g4...iopyX \n", + "21 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... 9eh...ApYkk \n", + "22 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... 9eh...ApYkk \n", + "23 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... 9g4...iopyX \n", + "24 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... 9h6...YYYAb \n", + "25 023d3db990a609673fb2143fdfd110f959928864ee5ba0... 9fH...HbNJx \n", + "26 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... 9h6...YYYAb \n", + "27 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... 9gX...w5Yto \n", + "28 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... 9eh...ApYkk \n", + "29 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... 9eh...ApYkk \n", + "30 32df796eeeeb916349df58e3263011fc13e2064202638d... 9i8...SKz8K \n", + "31 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... 9gw...Xhqys \n", + "32 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... 9eh...ApYkk \n", + "33 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... 9g4...iopyX \n", + "34 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... 9i8...SKz8K \n", + "35 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... 9iJ...j8zdC \n", + "36 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... 9i8...SKz8K \n", + "37 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... 9ex...WFksx \n", + "38 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... 9i3...ZGLDL \n", + "39 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... 9f7...MxEbM \n", + "40 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... 9i3...ZGLDL \n", + "41 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... 9ex...WFksx \n", + "42 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... 9ex...WFksx \n", + "43 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... 9eZ...zb9tD \n", + "44 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... 9g4...iopyX \n", + "45 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... 9hT...fgbTV \n", + "46 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... 9i3...ZGLDL \n", + "47 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... 9g4...iopyX \n", + "48 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... 9gX...w5Yto \n", + "49 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... 9eh...ApYkk \n", + "50 48044bb6835294495eb17744326b63f3183a629ab44767... 9g4...iopyX \n", + "51 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... 9hT...fgbTV \n", + "52 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... 9eh...ApYkk \n", + "53 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... 9eh...ApYkk \n", + "54 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... 9gX...w5Yto \n", + "55 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... 9gw...Xhqys \n", + "56 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... 9fY...4HpcP \n", + "57 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... 9fY...4HpcP \n", + "58 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... 9i8...SKz8K \n", + "59 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... 9iQ...bL3fJ \n", "\n", " source time_found \n", - "0 ErgoSigmanauts 2024-04-28 03:06:52 \n", - "1 ErgoSigmanauts 2024-04-28 02:55:03 \n", - "2 ErgoSigmanauts 2024-04-27 07:59:45 \n", - "3 ErgoSigmanauts 2024-04-27 06:54:45 \n", - "4 ErgoSigmanauts 2024-04-27 04:31:16 \n", - "5 ErgoSigmanauts 2024-04-26 18:24:58 \n", - "6 ErgoSigmanauts 2024-04-26 16:00:40 \n", - "7 ErgoSigmanauts 2024-04-23 22:19:10 \n", - "8 ErgoSigmanauts 2024-04-23 19:17:03 \n", - "9 ErgoSigmanauts 2024-04-23 19:06:49 \n", - "10 ErgoSigmanauts 2024-04-23 12:18:50 \n", - "11 ErgoSigmanauts 2024-04-22 22:07:16 \n", - "12 ErgoSigmanauts 2024-04-22 18:11:34 \n", - "13 ErgoSigmanauts 2024-04-22 09:12:21 \n", - "14 ErgoSigmanauts 2024-04-21 18:58:55 \n", - "15 ErgoSigmanauts 2024-04-21 16:57:09 \n", - "16 ErgoSigmanauts 2024-04-21 15:49:03 \n", - "17 ErgoSigmanauts 2024-04-21 05:49:18 \n", - "18 ErgoSigmanauts 2024-04-19 17:13:40 \n", - "19 ErgoSigmanauts 2024-04-19 10:06:26 \n", - "20 ErgoSigmanauts 2024-04-19 09:41:15 \n", - "21 ErgoSigmanauts 2024-04-19 08:45:52 \n", - "22 ErgoSigmanauts 2024-04-18 09:31:37 \n", - "23 ErgoSigmanauts 2024-04-18 08:01:31 \n", - "24 ErgoSigmanauts 2024-04-18 03:11:44 \n", - "25 ErgoSigmanauts 2024-04-17 21:39:45 \n", - "26 ErgoSigmanauts 2024-04-17 01:03:11 \n", - "27 ErgoSigmanauts 2024-04-16 20:53:07 \n", - "28 ErgoSigmanauts 2024-04-15 13:26:36 \n", - "29 ErgoSigmanauts 2024-04-15 05:58:59 \n", - "30 ErgoSigmanauts 2024-04-14 19:46:29 \n", - "31 ErgoSigmanauts 2024-04-14 07:53:57 \n", - "32 ErgoSigmanauts 2024-04-13 01:40:15 \n", - "33 ErgoSigmanauts 2024-04-10 21:52:48 \n", - "34 ErgoSigmanauts 2024-04-10 16:45:58 \n", - "35 ErgoSigmanauts 2024-04-10 11:38:14 \n", - "36 ErgoSigmanauts 2024-04-09 23:57:08 \n", - "37 ErgoSigmanauts 2024-04-08 14:35:09 \n", - "38 ErgoSigmanauts 2024-04-07 19:55:43 \n", - "39 ErgoSigmanauts 2024-04-06 00:11:43 \n", - "40 ErgoSigmanauts 2024-04-04 23:46:44 \n", - "41 ErgoSigmanauts 2024-04-04 01:40:19 \n", - "42 ErgoSigmanauts 2024-04-03 18:22:18 \n", - "43 ErgoSigmanauts 2024-04-03 04:57:28 \n", - "44 ErgoSigmanauts 2024-03-31 07:40:29 \n", - "45 ErgoSigmanauts 2024-03-31 06:53:18 \n", - "46 ErgoSigmanauts 2024-03-31 02:11:27 \n", - "47 ErgoSigmanauts 2024-03-29 22:22:38 \n", - "48 ErgoSigmanauts 2024-03-29 04:26:22 \n", - "49 ErgoSigmanauts 2024-03-28 16:41:02 \n", - "50 ErgoSigmanauts 2024-03-28 15:40:37 \n", - "51 ErgoSigmanauts 2024-03-28 08:26:49 \n", - "52 ErgoSigmanauts 2024-03-27 18:07:25 \n", - "53 ErgoSigmanauts 2024-03-19 04:19:20 \n", - "54 ErgoSigmanauts 2024-03-16 06:45:27 " + "0 ErgoSigmanauts 2024-04-29 08:20:04 \n", + "1 ErgoSigmanauts 2024-04-28 23:18:22 \n", + "2 ErgoSigmanauts 2024-04-28 17:16:48 \n", + "3 ErgoSigmanauts 2024-04-28 16:09:49 \n", + "4 ErgoSigmanauts 2024-04-28 12:59:58 \n", + "5 ErgoSigmanauts 2024-04-28 03:06:52 \n", + "6 ErgoSigmanauts 2024-04-28 02:55:03 \n", + "7 ErgoSigmanauts 2024-04-27 07:59:45 \n", + "8 ErgoSigmanauts 2024-04-27 06:54:45 \n", + "9 ErgoSigmanauts 2024-04-27 04:31:16 \n", + "10 ErgoSigmanauts 2024-04-26 18:24:58 \n", + "11 ErgoSigmanauts 2024-04-26 16:00:40 \n", + "12 ErgoSigmanauts 2024-04-23 22:19:10 \n", + "13 ErgoSigmanauts 2024-04-23 19:17:03 \n", + "14 ErgoSigmanauts 2024-04-23 19:06:49 \n", + "15 ErgoSigmanauts 2024-04-23 12:18:50 \n", + "16 ErgoSigmanauts 2024-04-22 22:07:16 \n", + "17 ErgoSigmanauts 2024-04-22 18:11:34 \n", + "18 ErgoSigmanauts 2024-04-22 09:12:21 \n", + "19 ErgoSigmanauts 2024-04-21 18:58:55 \n", + "20 ErgoSigmanauts 2024-04-21 16:57:09 \n", + "21 ErgoSigmanauts 2024-04-21 15:49:03 \n", + "22 ErgoSigmanauts 2024-04-21 05:49:18 \n", + "23 ErgoSigmanauts 2024-04-19 17:13:40 \n", + "24 ErgoSigmanauts 2024-04-19 10:06:26 \n", + "25 ErgoSigmanauts 2024-04-19 09:41:15 \n", + "26 ErgoSigmanauts 2024-04-19 08:45:52 \n", + "27 ErgoSigmanauts 2024-04-18 09:31:37 \n", + "28 ErgoSigmanauts 2024-04-18 08:01:31 \n", + "29 ErgoSigmanauts 2024-04-18 03:11:44 \n", + "30 ErgoSigmanauts 2024-04-17 21:39:45 \n", + "31 ErgoSigmanauts 2024-04-17 01:03:11 \n", + "32 ErgoSigmanauts 2024-04-16 20:53:07 \n", + "33 ErgoSigmanauts 2024-04-15 13:26:36 \n", + "34 ErgoSigmanauts 2024-04-15 05:58:59 \n", + "35 ErgoSigmanauts 2024-04-14 19:46:29 \n", + "36 ErgoSigmanauts 2024-04-14 07:53:57 \n", + "37 ErgoSigmanauts 2024-04-13 01:40:15 \n", + "38 ErgoSigmanauts 2024-04-10 21:52:48 \n", + "39 ErgoSigmanauts 2024-04-10 16:45:58 \n", + "40 ErgoSigmanauts 2024-04-10 11:38:14 \n", + "41 ErgoSigmanauts 2024-04-09 23:57:08 \n", + "42 ErgoSigmanauts 2024-04-08 14:35:09 \n", + "43 ErgoSigmanauts 2024-04-07 19:55:43 \n", + "44 ErgoSigmanauts 2024-04-06 00:11:43 \n", + "45 ErgoSigmanauts 2024-04-04 23:46:44 \n", + "46 ErgoSigmanauts 2024-04-04 01:40:19 \n", + "47 ErgoSigmanauts 2024-04-03 18:22:18 \n", + "48 ErgoSigmanauts 2024-04-03 04:57:28 \n", + "49 ErgoSigmanauts 2024-03-31 07:40:29 \n", + "50 ErgoSigmanauts 2024-03-31 06:53:18 \n", + "51 ErgoSigmanauts 2024-03-31 02:11:27 \n", + "52 ErgoSigmanauts 2024-03-29 22:22:38 \n", + "53 ErgoSigmanauts 2024-03-29 04:26:22 \n", + "54 ErgoSigmanauts 2024-03-28 16:41:02 \n", + "55 ErgoSigmanauts 2024-03-28 15:40:37 \n", + "56 ErgoSigmanauts 2024-03-28 08:26:49 \n", + "57 ErgoSigmanauts 2024-03-27 18:07:25 \n", + "58 ErgoSigmanauts 2024-03-19 04:19:20 \n", + "59 ErgoSigmanauts 2024-03-16 06:45:27 " ] }, "execution_count": 5, @@ -1297,7 +1413,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -1332,7 +1448,7 @@ " connectedminers\n", " poolhashrate\n", " sharespersecond\n", - " networktype\n", + " ...\n", " networkhashrate\n", " networkdifficulty\n", " lastnetworkblocktime\n", @@ -1341,6 +1457,7 @@ " rewardtype\n", " pooleffort\n", " poolttf\n", + " price\n", " insert_time_stamp\n", " \n", " \n", @@ -1348,204 +1465,49 @@ " \n", " 0\n", " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 35\n", - " 53.49\n", - " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 05:44:13.706139\n", - " 1252636\n", - " 117\n", - " POW\n", - " 30.045\n", - " 0.368\n", - " 2024-04-27 23:46:14.045126\n", - " \n", - " \n", - " 1\n", - " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 35\n", - " 51.75\n", - " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 06:19:50.441240\n", - " 1252649\n", - " 117\n", - " POW\n", - " 35.203\n", - " 0.381\n", - " 2024-04-28 00:19:52.703999\n", - " \n", - " \n", - " 2\n", - " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 35\n", - " 49.59\n", - " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 06:20:30.928661\n", - " 1252651\n", - " 117\n", - " POW\n", - " 33.891\n", - " 0.397\n", - " 2024-04-28 00:20:46.616987\n", - " \n", - " \n", - " 3\n", - " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 35\n", - " 49.59\n", - " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 06:20:30.928661\n", - " 1252651\n", - " 117\n", - " POW\n", - " 34.085\n", - " 0.397\n", - " 2024-04-28 00:21:53.515139\n", - " \n", - " \n", - " 4\n", - " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 35\n", - " 50.03\n", - " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 06:23:15.242287\n", - " 1252652\n", - " 118\n", - " POW\n", - " 34.627\n", - " 0.394\n", - " 2024-04-28 00:23:15.019256\n", - " \n", - " \n", - " 5\n", - " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 35\n", - " 49.88\n", - " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 06:26:17.595862\n", - " 1252655\n", - " 118\n", - " POW\n", - " 35.445\n", - " 0.395\n", - " 2024-04-28 00:28:29.354552\n", - " \n", - " \n", - " 6\n", - " 0.9\n", - " 1505.063062\n", - " 55\n", - " 2024-04-28 03:06:52\n", + " 1637.626309\n", + " 60\n", + " 2024-04-29 08:20:04\n", " True\n", " 0.5\n", " PPLNS\n", - " 35\n", - " 51.13\n", + " 40\n", + " 59.74\n", " 4.0\n", - " mainnet\n", - " 14.187601\n", - " 1.702512\n", - " 2024-04-28 06:32:08.553698\n", - " 1252658\n", - " 117\n", + " ...\n", + " 13.741712\n", + " 1.649005\n", + " 2024-04-29 21:11:23.803766\n", + " 1253802\n", + " 113\n", " POW\n", - " 37.562\n", - " 0.385\n", - " 2024-04-28 00:35:18.670247\n", + " 168.124\n", + " 0.319\n", + " 1.33\n", + " 2024-04-29 15:13:30.817364\n", " \n", " \n", "\n", + "

1 rows × 21 columns

\n", "" ], "text/plain": [ " fee paid blocks last_block_found enabled minimumpayment \\\n", - "0 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", - "1 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", - "2 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", - "3 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", - "4 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", - "5 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", - "6 0.9 1505.063062 55 2024-04-28 03:06:52 True 0.5 \n", + "0 0.9 1637.626309 60 2024-04-29 08:20:04 True 0.5 \n", + "\n", + " payoutscheme connectedminers poolhashrate sharespersecond ... \\\n", + "0 PPLNS 40 59.74 4.0 ... \n", + "\n", + " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", + "0 13.741712 1.649005 2024-04-29 21:11:23.803766 1253802 \n", "\n", - " payoutscheme connectedminers poolhashrate sharespersecond networktype \\\n", - "0 PPLNS 35 53.49 4.0 mainnet \n", - "1 PPLNS 35 51.75 4.0 mainnet \n", - "2 PPLNS 35 49.59 4.0 mainnet \n", - "3 PPLNS 35 49.59 4.0 mainnet \n", - "4 PPLNS 35 50.03 4.0 mainnet \n", - "5 PPLNS 35 49.88 4.0 mainnet \n", - "6 PPLNS 35 51.13 4.0 mainnet \n", + " connectedpeers rewardtype pooleffort poolttf price \\\n", + "0 113 POW 168.124 0.319 1.33 \n", "\n", - " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", - "0 14.187601 1.702512 2024-04-28 05:44:13.706139 1252636 \n", - "1 14.187601 1.702512 2024-04-28 06:19:50.441240 1252649 \n", - "2 14.187601 1.702512 2024-04-28 06:20:30.928661 1252651 \n", - "3 14.187601 1.702512 2024-04-28 06:20:30.928661 1252651 \n", - "4 14.187601 1.702512 2024-04-28 06:23:15.242287 1252652 \n", - "5 14.187601 1.702512 2024-04-28 06:26:17.595862 1252655 \n", - "6 14.187601 1.702512 2024-04-28 06:32:08.553698 1252658 \n", + " insert_time_stamp \n", + "0 2024-04-29 15:13:30.817364 \n", "\n", - " connectedpeers rewardtype pooleffort poolttf insert_time_stamp \n", - "0 117 POW 30.045 0.368 2024-04-27 23:46:14.045126 \n", - "1 117 POW 35.203 0.381 2024-04-28 00:19:52.703999 \n", - "2 117 POW 33.891 0.397 2024-04-28 00:20:46.616987 \n", - "3 117 POW 34.085 0.397 2024-04-28 00:21:53.515139 \n", - "4 118 POW 34.627 0.394 2024-04-28 00:23:15.019256 \n", - "5 118 POW 35.445 0.395 2024-04-28 00:28:29.354552 \n", - "6 117 POW 37.562 0.385 2024-04-28 00:35:18.670247 " + "[1 rows x 21 columns]" ] }, "execution_count": 6, @@ -1568,7 +1530,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:133: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -1591,51 +1553,2954 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "cd8c2c61-4ba2-4740-9f3f-667c501d365e", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'fee': 0.9,\n", + " 'paid': 1637.626309487606,\n", + " 'blocks': 60,\n", + " 'last_block_found': '2024-04-29 08:20:04',\n", + " 'enabled': True,\n", + " 'minimumPayment': 0.5,\n", + " 'payoutScheme': 'PPLNS',\n", + " 'connectedMiners': 40,\n", + " 'poolHashrate': 59.74,\n", + " 'sharesPerSecond': 4,\n", + " 'networkType': 'mainnet',\n", + " 'networkHashrate': 13.741712072157867,\n", + " 'networkDifficulty': 1.649005448658944,\n", + " 'lastNetworkBlockTime': '2024-04-29T21:11:23.8037662Z',\n", + " 'blockHeight': 1253802,\n", + " 'connectedPeers': 113,\n", + " 'rewardType': 'POW',\n", + " 'insert_time_stamp': Timestamp('2024-04-29 15:13:30.817364'),\n", + " 'poolEffort': 168.124,\n", + " 'poolTTF': 0.319,\n", + " 'price': 1.33}" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.data" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "2ceade65-613b-413e-9c46-df3e12e15911", "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", + " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", + " 'sharespersecond', 'networktype', 'networkhashrate',\n", + " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", + " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", + " 'insert_time_stamp'],\n", + " dtype='object')\n", + "9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2TuYsAik 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtGYYYAb 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZZGLDL 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbTJM7tN 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzdHbNJx 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJw5Yto 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsmeFsakQ 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsNLUuxo 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxjprSrh 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zddSGtj 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL8ygPH 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvqfgbTV 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "no live data for miner 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvqfgbTV\n", + "9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQLLUaV 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5DUhcN 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJWFksx 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4Xhqys 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6qSZL4w 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggNcnMzN 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8yn2ewV 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZSKz8K 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCASaZmxt 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA9uUJN 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSHMxEbM 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "no live data for miner 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb\n", + "9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgCj8zdC 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5SemSuT 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89Tbadc 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SWceKR9 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5NfWd5MK 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Yon1dQ 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaMPRHTP 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZedzb9tD 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "no live data for miner 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN\n", + "9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuLNVE7S 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ58uHE 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "no live data for miner 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP\n", + "9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEuhcvT1 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n", + "9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJUip8z 0 9i8...SKz8K\n", + "1 9i3...ZGLDL\n", + "2 9fx...n2ewV\n", + "3 9fR...LUuxo\n", + "4 9hN...TigVb\n", + "5 9hS...8ygPH\n", + "6 9i3...ZGLDL\n", + "7 9i8...SKz8K\n", + "8 9i3...ZGLDL\n", + "9 9fx...n2ewV\n", + "10 9g4...iopyX\n", + "11 9fH...HbNJx\n", + "12 9fR...LUuxo\n", + "13 9f3...YsAik\n", + "14 9eZ...FsakQ\n", + "15 9gg...emSuT\n", + "16 9iJ...j8zdC\n", + "17 9f5...ceKR9\n", + "18 9f3...YsAik\n", + "19 9h6...YYYAb\n", + "20 9g4...iopyX\n", + "21 9eh...ApYkk\n", + "22 9eh...ApYkk\n", + "23 9g4...iopyX\n", + "24 9h6...YYYAb\n", + "25 9fH...HbNJx\n", + "26 9h6...YYYAb\n", + "27 9gX...w5Yto\n", + "28 9eh...ApYkk\n", + "29 9eh...ApYkk\n", + "30 9i8...SKz8K\n", + "31 9gw...Xhqys\n", + "32 9eh...ApYkk\n", + "33 9g4...iopyX\n", + "34 9i8...SKz8K\n", + "35 9iJ...j8zdC\n", + "36 9i8...SKz8K\n", + "37 9ex...WFksx\n", + "38 9i3...ZGLDL\n", + "39 9f7...MxEbM\n", + "40 9i3...ZGLDL\n", + "41 9ex...WFksx\n", + "42 9ex...WFksx\n", + "43 9eZ...zb9tD\n", + "44 9g4...iopyX\n", + "45 9hT...fgbTV\n", + "46 9i3...ZGLDL\n", + "47 9g4...iopyX\n", + "48 9gX...w5Yto\n", + "49 9eh...ApYkk\n", + "50 9g4...iopyX\n", + "51 9hT...fgbTV\n", + "52 9eh...ApYkk\n", + "53 9eh...ApYkk\n", + "54 9gX...w5Yto\n", + "55 9gw...Xhqys\n", + "56 9fY...4HpcP\n", + "57 9fY...4HpcP\n", + "58 9i8...SKz8K\n", + "59 9iQ...bL3fJ\n", + "Name: miner, dtype: object\n" + ] + } + ], "source": [ - "db_sync.update_miner_data(timenow)\n", - "db_sync.db.fetch_data('payment')" + "db_sync.update_miner_data(timenow)" ] }, { "cell_type": "code", - "execution_count": null, - "id": "45b50f14-4805-4b2f-ac90-baaa87b92ca4", + "execution_count": 10, + "id": "dc05f4bd-a2b9-4fb2-a57b-95f8ac26d9fe", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/plain": [ + "Index(['worker', 'hashrate', 'shares_per_second', 'created', 'miner', 'effort',\n", + " 'ttf', 'last_block_found'],\n", + " dtype='object')" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "df = db_sync.db.fetch_data('live_worker')\n", - "aggregated_df = df.groupby('miner').agg({\n", - " 'hashrate': 'sum', # Sum of hashrate\n", - " 'shares_per_second': 'sum', # Sum of shares_per_second\n", - " 'worker': 'nunique', # Count of unique workers\n", - " # 'miner': 'miner' # Count of unique miners\n", - "})\n", - "aggregated_df\n", - "# aggregated_df.sort_values(['created'])" + "df.columns" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "id": "a48184cc-33de-4d81-834d-7861d2dd6e3c", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
workerhashrateshares_per_secondcreatedminer
0totals3291.310.292024-04-28 22:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
14x_3060ti497.760.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
26x_GIGABYTE877.680.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
36x_MIXED940.190.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
48x_3060ti1247.390.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
..................
2704totals41.940.012024-04-29 17:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2705aliens6964.230.012024-04-29 18:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2706totals64.230.012024-04-29 18:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2707aliens6958.500.012024-04-29 19:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2708totals58.500.012024-04-29 19:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
\n", + "

2709 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " worker hashrate shares_per_second created \\\n", + "0 totals 3291.31 0.29 2024-04-28 22:00:00 \n", + "1 4x_3060ti 497.76 0.07 2024-04-28 23:00:00 \n", + "2 6x_GIGABYTE 877.68 0.07 2024-04-28 23:00:00 \n", + "3 6x_MIXED 940.19 0.07 2024-04-28 23:00:00 \n", + "4 8x_3060ti 1247.39 0.07 2024-04-28 23:00:00 \n", + "... ... ... ... ... \n", + "2704 totals 41.94 0.01 2024-04-29 17:00:00 \n", + "2705 aliens69 64.23 0.01 2024-04-29 18:00:00 \n", + "2706 totals 64.23 0.01 2024-04-29 18:00:00 \n", + "2707 aliens69 58.50 0.01 2024-04-29 19:00:00 \n", + "2708 totals 58.50 0.01 2024-04-29 19:00:00 \n", + "\n", + " miner \n", + "0 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "1 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "2 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "3 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "4 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "... ... \n", + "2704 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "2705 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "2706 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "2707 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "2708 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "\n", + "[2709 rows x 5 columns]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "df = db_sync.db.fetch_data('performance')\n", "df" @@ -1643,10 +4508,289 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, + "id": "8ecf033f-d342-4aa2-aecd-27fee6ce4325", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Series([], Name: worker, dtype: object)" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df[df.created == '2024-04-27 05:00:00'].worker" + ] + }, + { + "cell_type": "code", + "execution_count": 13, "id": "e86e1e78-c04a-4f1d-b95b-5963bc69e0c5", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
createdhashrateshares_per_secondworkerminer
02024-04-28 20:00:00109.104928.986937
12024-04-28 21:00:00109.715929.066937
22024-04-28 22:00:00109.343289.006937
32024-04-28 23:00:00107.667409.406938
42024-04-29 00:00:00106.738669.026836
52024-04-29 01:00:00108.637889.026836
62024-04-29 02:00:00105.983589.226937
72024-04-29 03:00:00106.254829.126937
82024-04-29 04:00:00106.571729.046837
92024-04-29 05:00:00112.251729.487039
102024-04-29 06:00:00110.388149.387140
112024-04-29 07:00:00109.808949.367241
122024-04-29 08:00:00109.455129.207040
132024-04-29 09:00:00112.194689.266939
142024-04-29 10:00:00111.585109.206939
152024-04-29 11:00:00111.028709.226939
162024-04-29 12:00:00108.970649.126939
172024-04-29 13:00:00107.936809.106939
182024-04-29 14:00:00110.374709.507039
192024-04-29 15:00:00110.957429.367040
202024-04-29 16:00:00117.469749.787140
212024-04-29 17:00:00117.702889.547140
222024-04-29 18:00:00115.054569.427040
232024-04-29 19:00:00119.062149.787240
\n", + "
" + ], + "text/plain": [ + " created hashrate shares_per_second worker miner\n", + "0 2024-04-28 20:00:00 109.10492 8.98 69 37\n", + "1 2024-04-28 21:00:00 109.71592 9.06 69 37\n", + "2 2024-04-28 22:00:00 109.34328 9.00 69 37\n", + "3 2024-04-28 23:00:00 107.66740 9.40 69 38\n", + "4 2024-04-29 00:00:00 106.73866 9.02 68 36\n", + "5 2024-04-29 01:00:00 108.63788 9.02 68 36\n", + "6 2024-04-29 02:00:00 105.98358 9.22 69 37\n", + "7 2024-04-29 03:00:00 106.25482 9.12 69 37\n", + "8 2024-04-29 04:00:00 106.57172 9.04 68 37\n", + "9 2024-04-29 05:00:00 112.25172 9.48 70 39\n", + "10 2024-04-29 06:00:00 110.38814 9.38 71 40\n", + "11 2024-04-29 07:00:00 109.80894 9.36 72 41\n", + "12 2024-04-29 08:00:00 109.45512 9.20 70 40\n", + "13 2024-04-29 09:00:00 112.19468 9.26 69 39\n", + "14 2024-04-29 10:00:00 111.58510 9.20 69 39\n", + "15 2024-04-29 11:00:00 111.02870 9.22 69 39\n", + "16 2024-04-29 12:00:00 108.97064 9.12 69 39\n", + "17 2024-04-29 13:00:00 107.93680 9.10 69 39\n", + "18 2024-04-29 14:00:00 110.37470 9.50 70 39\n", + "19 2024-04-29 15:00:00 110.95742 9.36 70 40\n", + "20 2024-04-29 16:00:00 117.46974 9.78 71 40\n", + "21 2024-04-29 17:00:00 117.70288 9.54 71 40\n", + "22 2024-04-29 18:00:00 115.05456 9.42 70 40\n", + "23 2024-04-29 19:00:00 119.06214 9.78 72 40" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "aggregated_df = df.groupby('created').agg({\n", " 'hashrate': 'sum', # Sum of hashrate\n", @@ -1654,23 +4798,1283 @@ " 'worker': 'nunique', # Count of unique workers\n", " 'miner': 'nunique' # Count of unique miners\n", "}).reset_index()\n", - "aggregated_df.sort_values(['created'])" + "aggregated_df['hashrate'] = aggregated_df['hashrate'] / 1000\n", + "aggregated_df" ] }, { "cell_type": "code", - "execution_count": null, - "id": "c20f9edc-7c09-4167-98c3-4bb1086c80a7", + "execution_count": 14, + "id": "efd84d1e-1548-4d60-8e7a-d273f2b02293", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "'10 MB'" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "aggregated_df['created']" + "db_sync.db.get_db_size()" ] }, { "cell_type": "code", - "execution_count": null, - "id": "efd84d1e-1548-4d60-8e7a-d273f2b02293", + "execution_count": 15, + "id": "abc2ae53-86da-4e35-b943-7c932f82f68a", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
minerhashrateshares_per_secondworker
09eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...628.660.142
19eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...6327.640.283
29ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...9382.940.565
39eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf...598.400.122
49exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...2859.880.283
59f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y...519.600.102
69f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...9880.780.444
79f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...720.660.163
89f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...1064.040.162
99fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...398.660.082
109fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...5796.660.323
119fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj...4565.560.505
129fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...4073.100.282
139fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN...1741.140.122
149fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...1870.380.182
159fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q...2373.740.162
169fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT...5264.980.444
179g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...7890.660.646
189g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA...1431.460.223
199gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5...4126.200.383
209gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM...506.000.122
219gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...400.760.082
229gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...7177.320.565
239ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...904.660.203
249ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS...1361.420.122
259gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ...306.660.062
269gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...2660.420.142
279gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...153.340.042
289h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...6945.440.686
299hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...4175.620.303
309hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd...3954.640.404
319hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89...837.940.142
329htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju...3646.380.162
339hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ...3663.680.142
349i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...7775.740.404
359i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...2011.520.243
369iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...306.660.062
379iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...240.300.062
389iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...793.000.163
399iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...214.660.042
\n", + "
" + ], + "text/plain": [ + " miner hashrate \\\n", + "0 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... 628.66 \n", + "1 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... 6327.64 \n", + "2 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... 9382.94 \n", + "3 9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf... 598.40 \n", + "4 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... 2859.88 \n", + "5 9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y... 519.60 \n", + "6 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 9880.78 \n", + "7 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... 720.66 \n", + "8 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... 1064.04 \n", + "9 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... 398.66 \n", + "10 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... 5796.66 \n", + "11 9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj... 4565.56 \n", + "12 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... 4073.10 \n", + "13 9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN... 1741.14 \n", + "14 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... 1870.38 \n", + "15 9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q... 2373.74 \n", + "16 9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT... 5264.98 \n", + "17 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 7890.66 \n", + "18 9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA... 1431.46 \n", + "19 9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5... 4126.20 \n", + "20 9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM... 506.00 \n", + "21 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 400.76 \n", + "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... 7177.32 \n", + "23 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... 904.66 \n", + "24 9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS... 1361.42 \n", + "25 9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ... 306.66 \n", + "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... 2660.42 \n", + "27 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... 153.34 \n", + "28 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... 6945.44 \n", + "29 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... 4175.62 \n", + "30 9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd... 3954.64 \n", + "31 9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89... 837.94 \n", + "32 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju... 3646.38 \n", + "33 9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ... 3663.68 \n", + "34 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... 7775.74 \n", + "35 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... 2011.52 \n", + "36 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... 306.66 \n", + "37 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... 240.30 \n", + "38 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... 793.00 \n", + "39 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... 214.66 \n", + "\n", + " shares_per_second worker \n", + "0 0.14 2 \n", + "1 0.28 3 \n", + "2 0.56 5 \n", + "3 0.12 2 \n", + "4 0.28 3 \n", + "5 0.10 2 \n", + "6 0.44 4 \n", + "7 0.16 3 \n", + "8 0.16 2 \n", + "9 0.08 2 \n", + "10 0.32 3 \n", + "11 0.50 5 \n", + "12 0.28 2 \n", + "13 0.12 2 \n", + "14 0.18 2 \n", + "15 0.16 2 \n", + "16 0.44 4 \n", + "17 0.64 6 \n", + "18 0.22 3 \n", + "19 0.38 3 \n", + "20 0.12 2 \n", + "21 0.08 2 \n", + "22 0.56 5 \n", + "23 0.20 3 \n", + "24 0.12 2 \n", + "25 0.06 2 \n", + "26 0.14 2 \n", + "27 0.04 2 \n", + "28 0.68 6 \n", + "29 0.30 3 \n", + "30 0.40 4 \n", + "31 0.14 2 \n", + "32 0.16 2 \n", + "33 0.14 2 \n", + "34 0.40 4 \n", + "35 0.24 3 \n", + "36 0.06 2 \n", + "37 0.06 2 \n", + "38 0.16 3 \n", + "39 0.04 2 " + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = db_sync.db.fetch_data('live_worker')\n", + "df = df.groupby('miner').agg({\n", + " 'hashrate': 'sum', # Sum of hashrate\n", + " 'shares_per_second': 'sum', # Sum of shares_per_second\n", + " 'worker': 'nunique', # Count of unique workers\n", + " # 'miner': 'miner' # Count of unique miners\n", + "}).reset_index()\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "cf513127-bb5c-48e1-aaef-d8ba9336f8b5", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
pendingsharespendingbalancetotalpaidtodaypaidschemapricelastpaymentlastpaymentlinkcreated_atminer
046.1693420.0000005.8719020.909460PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...
150.3813050.00000065.2328791.490709PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...
244.1710260.4434867.8907060.933902PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS...
340.0621010.3565449.3933140.739003PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA...
421.5371330.36853613.9638420.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...
524.1317680.2689706.2243340.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...
620.8191790.00000018.6802500.685726PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...
722.5927950.4349595.6494560.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...
814.9621780.45471317.8634770.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89...
92.9935560.1119410.5318270.531827PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...
1018.2667630.00000020.1171920.559168PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...
1114.8445160.1394424.7046810.604288PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf...
1211.8134330.0705993.2895520.501379PPLNS1.332024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y...
1313.7374220.4633714.6710980.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM...
1412.8326540.37459316.2735140.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...
156.7380550.3303813.0795220.000000PPLNS1.332024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD...
167.7743670.0767692.8635620.531781PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...
170.3965360.0000000.0000000.000000PPLNS1.33N/AKeep Mining!2024-04-29 15:13:30.8173649iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...
185.9807890.1630430.0000000.000000PPLNS1.33N/AKeep Mining!2024-04-29 15:13:30.8173649gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ...
195.7831660.3487806.5795310.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...
201.7353020.1182900.3264440.000000PPLNS1.332024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi...
214.5656260.2386691.0217170.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...
222.4410640.0329480.0000000.000000PPLNS1.33N/AKeep Mining!2024-04-29 15:13:30.8173649gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2358.3032520.0000007.3370061.189063PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q...
2447.2824900.00000019.8294370.943884PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN...
25240.3339920.000000112.1441924.897085PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
26226.4026990.000000294.0626774.638893PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...
27175.9390500.00000079.2945923.600629PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...
28193.7335080.00000055.1784383.903811PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
29167.9796860.000000217.2385213.343489PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...
30167.0578120.00000012.6730791.700399PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT...
31152.3077280.00000067.6556783.061028PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...
32171.7143020.000000211.3056253.329568PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
3346.0868050.00000020.1814261.856590PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...
34118.3907870.00000028.4874722.401307PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...
35114.4352840.00000021.2488792.313482PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj...
36105.2875510.0000006.7911472.134692PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd...
3764.2237450.0000009.3662221.665936PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...
389.2227120.00000021.2572510.865112PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...
3970.6233610.4668685.3857280.000000PPLNS1.332024-04-24https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju...
4063.7333100.0000005.4735641.230819PPLNS1.332024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ...
4134.4693720.28619450.6919840.841935PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5...
4272.9992400.00000057.9137531.463186PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...
4354.4002030.00000069.8276491.091410PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...
\n", + "
" + ], + "text/plain": [ + " pendingshares pendingbalance totalpaid todaypaid schema price \\\n", + "0 46.169342 0.000000 5.871902 0.909460 PPLNS 1.33 \n", + "1 50.381305 0.000000 65.232879 1.490709 PPLNS 1.33 \n", + "2 44.171026 0.443486 7.890706 0.933902 PPLNS 1.33 \n", + "3 40.062101 0.356544 9.393314 0.739003 PPLNS 1.33 \n", + "4 21.537133 0.368536 13.963842 0.000000 PPLNS 1.33 \n", + "5 24.131768 0.268970 6.224334 0.000000 PPLNS 1.33 \n", + "6 20.819179 0.000000 18.680250 0.685726 PPLNS 1.33 \n", + "7 22.592795 0.434959 5.649456 0.000000 PPLNS 1.33 \n", + "8 14.962178 0.454713 17.863477 0.000000 PPLNS 1.33 \n", + "9 2.993556 0.111941 0.531827 0.531827 PPLNS 1.33 \n", + "10 18.266763 0.000000 20.117192 0.559168 PPLNS 1.33 \n", + "11 14.844516 0.139442 4.704681 0.604288 PPLNS 1.33 \n", + "12 11.813433 0.070599 3.289552 0.501379 PPLNS 1.33 \n", + "13 13.737422 0.463371 4.671098 0.000000 PPLNS 1.33 \n", + "14 12.832654 0.374593 16.273514 0.000000 PPLNS 1.33 \n", + "15 6.738055 0.330381 3.079522 0.000000 PPLNS 1.33 \n", + "16 7.774367 0.076769 2.863562 0.531781 PPLNS 1.33 \n", + "17 0.396536 0.000000 0.000000 0.000000 PPLNS 1.33 \n", + "18 5.980789 0.163043 0.000000 0.000000 PPLNS 1.33 \n", + "19 5.783166 0.348780 6.579531 0.000000 PPLNS 1.33 \n", + "20 1.735302 0.118290 0.326444 0.000000 PPLNS 1.33 \n", + "21 4.565626 0.238669 1.021717 0.000000 PPLNS 1.33 \n", + "22 2.441064 0.032948 0.000000 0.000000 PPLNS 1.33 \n", + "23 58.303252 0.000000 7.337006 1.189063 PPLNS 1.33 \n", + "24 47.282490 0.000000 19.829437 0.943884 PPLNS 1.33 \n", + "25 240.333992 0.000000 112.144192 4.897085 PPLNS 1.33 \n", + "26 226.402699 0.000000 294.062677 4.638893 PPLNS 1.33 \n", + "27 175.939050 0.000000 79.294592 3.600629 PPLNS 1.33 \n", + "28 193.733508 0.000000 55.178438 3.903811 PPLNS 1.33 \n", + "29 167.979686 0.000000 217.238521 3.343489 PPLNS 1.33 \n", + "30 167.057812 0.000000 12.673079 1.700399 PPLNS 1.33 \n", + "31 152.307728 0.000000 67.655678 3.061028 PPLNS 1.33 \n", + "32 171.714302 0.000000 211.305625 3.329568 PPLNS 1.33 \n", + "33 46.086805 0.000000 20.181426 1.856590 PPLNS 1.33 \n", + "34 118.390787 0.000000 28.487472 2.401307 PPLNS 1.33 \n", + "35 114.435284 0.000000 21.248879 2.313482 PPLNS 1.33 \n", + "36 105.287551 0.000000 6.791147 2.134692 PPLNS 1.33 \n", + "37 64.223745 0.000000 9.366222 1.665936 PPLNS 1.33 \n", + "38 9.222712 0.000000 21.257251 0.865112 PPLNS 1.33 \n", + "39 70.623361 0.466868 5.385728 0.000000 PPLNS 1.33 \n", + "40 63.733310 0.000000 5.473564 1.230819 PPLNS 1.33 \n", + "41 34.469372 0.286194 50.691984 0.841935 PPLNS 1.33 \n", + "42 72.999240 0.000000 57.913753 1.463186 PPLNS 1.33 \n", + "43 54.400203 0.000000 69.827649 1.091410 PPLNS 1.33 \n", + "\n", + " lastpayment lastpaymentlink \\\n", + "0 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "1 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "2 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "3 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "4 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "5 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "6 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "7 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "8 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "9 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "10 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "11 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "12 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", + "13 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "14 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "15 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", + "16 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "17 N/A Keep Mining! \n", + "18 N/A Keep Mining! \n", + "19 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "20 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", + "21 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", + "22 N/A Keep Mining! \n", + "23 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "24 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "25 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "26 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "27 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "28 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "29 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "30 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "31 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "32 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "33 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "34 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "35 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "36 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "37 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "38 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "39 2024-04-24 https://explorer.ergoplatform.com/en/transacti... \n", + "40 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", + "41 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "42 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "43 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", + "\n", + " created_at \\\n", + "0 2024-04-29 15:13:30.817364 \n", + "1 2024-04-29 15:13:30.817364 \n", + "2 2024-04-29 15:13:30.817364 \n", + "3 2024-04-29 15:13:30.817364 \n", + "4 2024-04-29 15:13:30.817364 \n", + "5 2024-04-29 15:13:30.817364 \n", + "6 2024-04-29 15:13:30.817364 \n", + "7 2024-04-29 15:13:30.817364 \n", + "8 2024-04-29 15:13:30.817364 \n", + "9 2024-04-29 15:13:30.817364 \n", + "10 2024-04-29 15:13:30.817364 \n", + "11 2024-04-29 15:13:30.817364 \n", + "12 2024-04-29 15:13:30.817364 \n", + "13 2024-04-29 15:13:30.817364 \n", + "14 2024-04-29 15:13:30.817364 \n", + "15 2024-04-29 15:13:30.817364 \n", + "16 2024-04-29 15:13:30.817364 \n", + "17 2024-04-29 15:13:30.817364 \n", + "18 2024-04-29 15:13:30.817364 \n", + "19 2024-04-29 15:13:30.817364 \n", + "20 2024-04-29 15:13:30.817364 \n", + "21 2024-04-29 15:13:30.817364 \n", + "22 2024-04-29 15:13:30.817364 \n", + "23 2024-04-29 15:13:30.817364 \n", + "24 2024-04-29 15:13:30.817364 \n", + "25 2024-04-29 15:13:30.817364 \n", + "26 2024-04-29 15:13:30.817364 \n", + "27 2024-04-29 15:13:30.817364 \n", + "28 2024-04-29 15:13:30.817364 \n", + "29 2024-04-29 15:13:30.817364 \n", + "30 2024-04-29 15:13:30.817364 \n", + "31 2024-04-29 15:13:30.817364 \n", + "32 2024-04-29 15:13:30.817364 \n", + "33 2024-04-29 15:13:30.817364 \n", + "34 2024-04-29 15:13:30.817364 \n", + "35 2024-04-29 15:13:30.817364 \n", + "36 2024-04-29 15:13:30.817364 \n", + "37 2024-04-29 15:13:30.817364 \n", + "38 2024-04-29 15:13:30.817364 \n", + "39 2024-04-29 15:13:30.817364 \n", + "40 2024-04-29 15:13:30.817364 \n", + "41 2024-04-29 15:13:30.817364 \n", + "42 2024-04-29 15:13:30.817364 \n", + "43 2024-04-29 15:13:30.817364 \n", + "\n", + " miner \n", + "0 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... \n", + "1 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... \n", + "2 9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS... \n", + "3 9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA... \n", + "4 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... \n", + "5 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... \n", + "6 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... \n", + "7 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... \n", + "8 9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89... \n", + "9 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... \n", + "10 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... \n", + "11 9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf... \n", + "12 9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y... \n", + "13 9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM... \n", + "14 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... \n", + "15 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD... \n", + "16 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... \n", + "17 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", + "18 9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ... \n", + "19 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... \n", + "20 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi... \n", + "21 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... \n", + "22 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "23 9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q... \n", + "24 9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN... \n", + "25 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "26 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... \n", + "27 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... \n", + "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", + "29 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... \n", + "30 9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT... \n", + "31 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... \n", + "32 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", + "33 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... \n", + "34 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... \n", + "35 9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj... \n", + "36 9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd... \n", + "37 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... \n", + "38 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... \n", + "39 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju... \n", + "40 9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ... \n", + "41 9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5... \n", + "42 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... \n", + "43 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... " + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "payment = db_sync.db.fetch_data('payment')\n", + "payment" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1a522ea1-61b5-45af-ad5b-e58076459355", "metadata": {}, "outputs": [], "source": [] diff --git a/utils/api_2_db.py b/utils/api_2_db.py index ecc70e2a..36bc5848 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -32,15 +32,28 @@ def format_datetime(time_str): def worker_to_df(data): rows = [] + total_hash = 0 + total_shares = 0 for worker, details in data['workers'].items(): + hashrate = round(details['hashrate'] / 1e6, 2) + shares = round(details['sharesPerSecond'], 2) row = { 'worker': worker, - 'hashrate': round(details['hashrate'] / 1e6, 2), #MH/s - 'shares_per_second': round(details['sharesPerSecond'], 2), + 'hashrate': hashrate, #MH/s + 'shares_per_second': shares, 'created': format_datetime(data['created']) } rows.append(row) - + total_hash += hashrate + total_shares += shares + + totals = {'worker': 'totals', + 'hashrate': total_hash, #MH/s + 'shares_per_second': total_shares, + 'created': format_datetime(data['created']) + } + rows.append(totals) + # Create DataFrame return pd.DataFrame(rows) @@ -115,11 +128,11 @@ def __create_table__(self): return True def __delete_table__(self): - self.db.delete_table('stats') - self.db.delete_table('block') - self.db.delete_table('payment') - self.db.delete_table('live_worker') - self.db.delete_table('performance') + self.db.delete_data_in_batches('stats', 10) + self.db.delete_data_in_batches('block') + self.db.delete_data_in_batches('payment') + self.db.delete_data_in_batches('live_worker') + self.db.delete_data_in_batches('performance') return True def insert_df_rows(self, df, table): @@ -140,7 +153,9 @@ def update_pool_stats(self, timenow): self.data = {'fee': stats['poolFeePercent'], 'paid': stats['totalPaid'], 'blocks': stats['totalBlocks'], - 'last_block_found': last_block_found} + 'last_block_found': last_block_found, + } + payment_data = stats['paymentProcessing'] # dict pool_stats = stats['poolStats'] # dict @@ -167,6 +182,7 @@ def update_pool_stats(self, timenow): self.data['poolTTF'] = self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], self.data['poolHashrate'] * 1e3) + self.data['price'] = self.price_reader.get()[1] del self.data['payoutSchemeConfig'] del self.data['extra'] @@ -194,15 +210,22 @@ def update_block_data(self, timenow): self.db.update_or_insert('block', data) def update_miner_data(self, timenow): + self.db.delete_data_in_batches('live_worker') + self.db.create_table('live_worker', self.live_worker_headers) + + self.db.delete_data_in_batches('performance') + self.db.create_table('performance', self.live_worker_headers) _, erg_price = self.price_reader.get() miner_data = self.get_api_data('{}/{}'.format(self.base_api, 'miners?pageSize=5000')) miner_ls = [sample['miner'] for sample in miner_data] # time_now = pd.Timestamp.now() - stats = self.db.fetch_data('data') + stats = self.db.fetch_data('stats') + print(stats.columns) + stats = stats[stats.insert_time_stamp == max(stats.insert_time_stamp)] block_data = self.db.fetch_data('block') - networkHashrate = stats['networkhashrate'][0] # use logic to get the lastest not just the first index - networkDifficulty = stats['networkdifficulty'][0] + networkHashrate = stats['networkhashrate'].item() # use logic to get the lastest not just the first index + networkDifficulty = stats['networkdifficulty'].item() for miner in miner_ls: url = '{}/{}/{}'.format(self.base_api, 'miners', miner) mining_data = self.get_api_data(url) @@ -227,10 +250,17 @@ def update_miner_data(self, timenow): payment_data['created_at'] = timenow payment_data['miner'] = miner - miner_blocks = block_data[block_data.miner == miner] - - performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) - performance_df['miner'] = miner + print(miner, block_data.miner) + shorten_miner = '{}...{}'.format(miner[:3], miner[-5:]) + + miner_blocks = block_data[block_data.miner == shorten_miner] + try: + performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) + performance_df['miner'] = miner + + except ValueError: + # might need to add something here + pass if miner_blocks.empty: # still need to adjust to pull from performance table for this miner @@ -245,7 +275,10 @@ def update_miner_data(self, timenow): live_performance = mining_data.pop('performance') live_df = worker_to_df(live_performance) live_df['miner'] = miner - live_df['effort'] = [self.calculate_mining_effort(networkDifficulty, networkHashrate, + if last_block_found == 'N/A': + live_df['effort'] = 0 + else: + live_df['effort'] = [self.calculate_mining_effort(networkDifficulty, networkHashrate, temp_hash, latest) for temp_hash in live_df.hashrate] live_df['ttf'] = [self.calculate_time_to_find_block(networkDifficulty, networkHashrate, temp_hash) for temp_hash in live_df.hashrate] diff --git a/utils/db_util.py b/utils/db_util.py index 62785d2c..77c61947 100644 --- a/utils/db_util.py +++ b/utils/db_util.py @@ -1,6 +1,6 @@ import psycopg2 import pandas as pd - +import time class PostgreSQLDatabase: def __init__(self, username, password, host, port, database_name): self.username = username @@ -32,6 +32,15 @@ def get_cursor(self): return None return None + def get_db_size(self): + query = f"SELECT pg_size_pretty(pg_database_size('{self.database_name}'));" + cursor = self.get_cursor() + cursor.execute(query) + + # Fetch the result + size = cursor.fetchone()[0] + return size + def create_table(self, table_name, columns): cursor = self.get_cursor() if cursor: @@ -57,6 +66,40 @@ def delete_table(self, table_name): finally: cursor.close() + def delete_data_in_batches(self, table_name, batch_size=10000): + cursor = self.get_cursor() + if cursor: + try: + # First, determine the total number of rows in the table + cursor.execute(f"SELECT COUNT(*) FROM {table_name}") + total_rows = cursor.fetchone()[0] + num_batches = (total_rows + batch_size - 1) // batch_size # Calculate how many batches are needed + + for batch in range(num_batches): + # Use ROW_NUMBER() to select a range of rows within the current batch + delete_query = f""" + DELETE FROM {table_name} + WHERE ctid IN ( + SELECT ctid FROM ( + SELECT ctid, ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) as rn + FROM {table_name} + ) sub + WHERE rn BETWEEN {batch * batch_size + 1} AND {(batch + 1) * batch_size} + ); + """ + cursor.execute(delete_query) + self.conn.commit() + print(f"Batch {batch + 1}/{num_batches}: Deleted up to {batch_size} rows from {table_name}") + + # Avoid overloading the database with a small delay + time.sleep(1) + + except psycopg2.OperationalError as e: + print(f"Batch deletion failed: {e}") + self.conn.rollback() + finally: + cursor.close() + def insert_data(self, table_name, data): cursor = self.get_cursor() From 5a4ef1bcbd5e74f32a608a23092366797412e876 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Mon, 29 Apr 2024 15:21:45 -0600 Subject: [PATCH 08/16] finalized front page --- layouts/front_page.py | 26 +- testing_2_db.ipynb | 5942 +---------------------------------------- 2 files changed, 32 insertions(+), 5936 deletions(-) diff --git a/layouts/front_page.py b/layouts/front_page.py index d1b1841a..82824501 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -6,16 +6,12 @@ from utils.dash_utils import metric_row_style, image_style, create_row_card, card_style, image_card_style, bottom_row_style, bottom_image_style, card_color, large_text_color, small_text_color, background_color import plotly.graph_objs as go import plotly.express as px - -# from dash import HTML - from utils.api_2_db import DataSyncer db_sync = DataSyncer(config_path="../conf") price_reader = PriceReader() -# sigma_reader = SigmaWalletReader(config_path="../conf") debug = False @@ -84,8 +80,6 @@ def create_row_card(image, h2_text, p_text): html.P(p_text)]), style={'marginRight': 'auto', 'marginLeft': 'auto'}, width=4,) def setup_front_page_callbacks(app, reader): - # reader.update_data() - @app.callback([Output('metric-1', 'children')], [Input('fp-int-4', 'n_intervals')]) @@ -93,7 +87,7 @@ def update_first_row(n): data = db_sync.db.fetch_data('stats') data = data[data.insert_time_stamp == max(data.insert_time_stamp)] - ergo = data['price'].item() # need to pull latest or move to data and not use the first index + ergo = data['price'].item() n_miners = '{}'.format(data['connectedminers'].item()) hashrate = '{} GH/s'.format(data['poolhashrate'].item()) @@ -110,7 +104,7 @@ def update_first_row(n): def update_metrics(n): - data = db_sync.db.fetch_data('stats') # need to pull latest sample and grab values + data = db_sync.db.fetch_data('stats') data = data[data.insert_time_stamp == max(data.insert_time_stamp)] md = 4 @@ -149,7 +143,6 @@ def update_plots(n, value): block_df = block_df.sort_values(['time_found']) block_df['rolling_effort'] = block_df['effort'].expanding().mean() block_df['effort'] = block_df['effort'] * 100 - # block_df = reader.block_df title = 'EFFORT AND DIFFICULTY' block_df = block_df.sort_values('time_found') @@ -217,13 +210,11 @@ def update_plots(n, value): Input('dataset-dropdown', 'value')]) def update_content(n, selected_data): - # block_df= reader.block_df if selected_data == 'blocks': block_df = db_sync.db.fetch_data('block') block_df = block_df.filter(['time_found', 'blockheight', 'confirmationprogress', 'effort', 'reward', 'miner']) block_df = block_df.sort_values(['time_found'], ascending=False) - # block_df['rolling_effort'] = block_df['effort'].expanding().mean() block_df['effort'] = block_df['effort'] * 100 block_df = block_df.rename(columns={'effort': 'Effort [%]', 'time_found': 'Time Found', @@ -239,24 +230,13 @@ def update_content(n, selected_data): df = df.filter(['miner', 'hashrate', 'effort', 'ttf', 'last_block_found']) df['miner'] = ['{}...{}'.format(miner[:3], miner[-5:]) for miner in df.miner] df['hashrate'] = round(df['hashrate'], 2) + df = df.sort_values(['effort', 'hashrate'], ascending=False) df = df.rename(columns={'miner': 'Miner', 'hashrate': 'MH/s', 'effort': 'Current Effort [%]', 'ttf': 'Days to Find', 'last_block_found': 'Last Block Found'}) - - # df = df.groupby('miner').agg({ - # 'hashrate': 'sum', # Sum of hashrate - # 'shares_per_second': 'sum', # Sum of shares_per_second - # 'worker': 'nunique', # Count of unique workers - # # 'miner': 'miner' # Count of unique miners - # }).reset_index() - - # need to add TTF EFFORT etc - - # df = reader.get_latest_worker_samples(totals=True) - # df = df.rename(columns={"Effort": "Current Effort [%]", "Hashrate": "MH/s", 'TTF': 'TTF [Days]'}) title = 'Current Top Miners' else: diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index f0a418ae..59f70070 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "96944386-e139-4ef4-9d86-26463244ff6f", "metadata": {}, "outputs": [], @@ -13,7 +13,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "11604c9d-4ef6-48da-939f-fac113478414", "metadata": {}, "outputs": [], @@ -23,32 +23,10 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Batch 1/1: Deleted up to 10 rows from stats\n", - "Batch 1/1: Deleted up to 10000 rows from block\n", - "Batch 1/1: Deleted up to 10000 rows from payment\n", - "Batch 1/1: Deleted up to 10000 rows from live_worker\n", - "Batch 1/1: Deleted up to 10000 rows from performance\n" - ] - }, - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "db_sync.__delete_table__()\n", "db_sync.__create_table__()" @@ -56,7 +34,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "2736017b-7f7c-4f92-a8f0-9098dbcad123", "metadata": {}, "outputs": [], @@ -66,1338 +44,12 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "id": "fedbaf9b-d0df-4450-8584-27b4b4d5dc5a", "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1253410354831.66confirmed1001.05580c001f31e4fd3a27.00https://explorer.ergoplatform.com/en/blocks/7a...7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...9i8...SKz8KErgoSigmanauts2024-04-29 08:20:04
1ErgoSigmanauts1253118362089.48confirmed1000.6550239669e1ac4af827.00https://explorer.ergoplatform.com/en/blocks/44...44167cd62e4406f726826b15a0fcf6e843fade6c445102...9i3...ZGLDLErgoSigmanauts2024-04-28 23:18:22
2ErgoSigmanauts1252956390351.08confirmed1000.1157f9f469dba977c327.01https://explorer.ergoplatform.com/en/blocks/d0...d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...9fx...n2ewVErgoSigmanauts2024-04-28 17:16:48
3ErgoSigmanauts1252929390351.08confirmed1000.315016a01340d6b9ba27.65https://explorer.ergoplatform.com/en/blocks/88...881144c4c46b08e39d59817863da508be56c215eafb8eb...9fR...LUuxoErgoSigmanauts2024-04-28 16:09:49
4ErgoSigmanauts1252840350627.70confirmed1000.9657f1000efc558ff127.02https://explorer.ergoplatform.com/en/blocks/93...9395fce740c65f238690a5639a2938e0bce75b8a28b065...9hN...TigVbErgoSigmanauts2024-04-28 12:59:58
5ErgoSigmanauts1252559422881.66confirmed1000.0256dcc160776a8a7127.02https://explorer.ergoplatform.com/en/blocks/f1...f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4...9hS...8ygPHErgoSigmanauts2024-04-28 03:06:52
6ErgoSigmanauts1252553422881.66confirmed1001.8650230ed620a8fa0b27.00https://explorer.ergoplatform.com/en/blocks/9d...9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2...9i3...ZGLDLErgoSigmanauts2024-04-28 02:55:03
7ErgoSigmanauts1251978380358.29confirmed1000.1150a300044822864227.00https://explorer.ergoplatform.com/en/blocks/58...58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c...9i8...SKz8KErgoSigmanauts2024-04-27 07:59:45
8ErgoSigmanauts1251939366775.44confirmed1000.24502468dac362205227.02https://explorer.ergoplatform.com/en/blocks/a4...a4dc120a4aa17097a163160eeb41c3dba31780f4086491...9i3...ZGLDLErgoSigmanauts2024-04-27 06:54:45
9ErgoSigmanauts1251871366775.44confirmed1001.0450d8fd9c81187de227.01https://explorer.ergoplatform.com/en/blocks/2b...2be39f033f12f55638a0e9a8755b7f96b73d15b948990c...9fx...n2ewVErgoSigmanauts2024-04-27 04:31:16
10ErgoSigmanauts1251567388383.16confirmed1000.26555f000b343364e427.01https://explorer.ergoplatform.com/en/blocks/f8...f826ef482455161ca689de707f3c239b3ca8a6e7360a2c...9g4...iopyXErgoSigmanauts2024-04-26 18:24:58
11ErgoSigmanauts1251499388383.16confirmed1006.40507971cae2ee4a1827.00https://explorer.ergoplatform.com/en/blocks/c7...c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90...9fH...HbNJxErgoSigmanauts2024-04-26 16:00:40
12ErgoSigmanauts1249527315887.25confirmed1000.3450164a42c64cc4f127.02https://explorer.ergoplatform.com/en/blocks/4f...4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83...9fR...LUuxoErgoSigmanauts2024-04-23 22:19:10
13ErgoSigmanauts1249440315887.25confirmed1000.0250187b62b18da53527.01https://explorer.ergoplatform.com/en/blocks/22...224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c...9f3...YsAikErgoSigmanauts2024-04-23 19:17:03
14ErgoSigmanauts1249432315887.25confirmed1000.645057d49b44b4ed2127.01https://explorer.ergoplatform.com/en/blocks/ac...acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a...9eZ...FsakQErgoSigmanauts2024-04-23 19:06:49
15ErgoSigmanauts1249230361687.60confirmed1001.261bdb3e4628f615be27.01https://explorer.ergoplatform.com/en/blocks/2f...2f38ffbece540e4177f81615ad3130929dbf1855fcccff...9gg...emSuTErgoSigmanauts2024-04-23 12:18:50
16ErgoSigmanauts1248838426627.60confirmed1000.35186e549eb8340f1227.03https://explorer.ergoplatform.com/en/blocks/17...177fd26d67b248b8fa2b0f734be71628114fa12249403a...9iJ...j8zdCErgoSigmanauts2024-04-22 22:07:16
17ErgoSigmanauts1248716402639.91confirmed1000.691c96000783680ce227.01https://explorer.ergoplatform.com/en/blocks/5f...5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8...9f5...ceKR9ErgoSigmanauts2024-04-22 18:11:34
18ErgoSigmanauts1248443380709.27confirmed1001.00188b8a2690b7756927.01https://explorer.ergoplatform.com/en/blocks/2c...2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6...9f3...YsAikErgoSigmanauts2024-04-22 09:12:21
19ErgoSigmanauts1248031396231.07confirmed1000.161c1800034e77b16627.00https://explorer.ergoplatform.com/en/blocks/92...92e5d017e11243bae0295199fdab7b8b08ccb9363228ee...9h6...YYYAbErgoSigmanauts2024-04-21 18:58:55
20ErgoSigmanauts1247949334193.98confirmed1000.091bf4a728749d7de827.00https://explorer.ergoplatform.com/en/blocks/9a...9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad...9g4...iopyXErgoSigmanauts2024-04-21 16:57:09
21ErgoSigmanauts1247906334193.98confirmed1000.691a16000df545608327.03https://explorer.ergoplatform.com/en/blocks/2e...2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4...9eh...ApYkkErgoSigmanauts2024-04-21 15:49:03
22ErgoSigmanauts1247634390680.08confirmed1003.041a1329402f2206ed27.07https://explorer.ergoplatform.com/en/blocks/c7...c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd...9eh...ApYkkErgoSigmanauts2024-04-21 05:49:18
23ErgoSigmanauts1246555371421.35confirmed1000.5412fc6a2219199f2a27.01https://explorer.ergoplatform.com/en/blocks/40...40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0...9g4...iopyXErgoSigmanauts2024-04-19 17:13:40
24ErgoSigmanauts1246329338457.84confirmed1000.031642835a069e4fb927.03https://explorer.ergoplatform.com/en/blocks/32...3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e...9h6...YYYAbErgoSigmanauts2024-04-19 10:06:26
25ErgoSigmanauts1246316338457.84confirmed1000.07146857274f45ac2c27.18https://explorer.ergoplatform.com/en/blocks/02...023d3db990a609673fb2143fdfd110f959928864ee5ba0...9fH...HbNJxErgoSigmanauts2024-04-19 09:41:15
26ErgoSigmanauts1246282338457.84confirmed1002.08164237aca8296f1c27.01https://explorer.ergoplatform.com/en/blocks/b2...b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb...9h6...YYYAbErgoSigmanauts2024-04-19 08:45:52
27ErgoSigmanauts1245573345942.82confirmed1000.1212a8cc865d1eb6b127.00https://explorer.ergoplatform.com/en/blocks/b3...b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297...9gX...w5YtoErgoSigmanauts2024-04-18 09:31:37
28ErgoSigmanauts1245528323130.13confirmed1000.36126a0007f2a34c7c27.00https://explorer.ergoplatform.com/en/blocks/2d...2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6...9eh...ApYkkErgoSigmanauts2024-04-18 08:01:31
29ErgoSigmanauts1245375343213.85confirmed1000.38126b001c1226e66627.00https://explorer.ergoplatform.com/en/blocks/d0...d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f...9eh...ApYkkErgoSigmanauts2024-04-18 03:11:44
30ErgoSigmanauts1245219385248.18confirmed1001.36123200132a4f005327.00https://explorer.ergoplatform.com/en/blocks/32...32df796eeeeb916349df58e3263011fc13e2064202638d...9i8...SKz8KErgoSigmanauts2024-04-17 21:39:45
31ErgoSigmanauts1244611350337.67confirmed1000.3013309b8b1531ac3d27.00https://explorer.ergoplatform.com/en/blocks/4a...4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa...9gw...XhqysErgoSigmanauts2024-04-17 01:03:11
32ErgoSigmanauts1244487347763.78confirmed1002.11126b0037bf192dd927.00https://explorer.ergoplatform.com/en/blocks/79...7994b89a991f3a3589d54772c4e30437894c691aa0dfd6...9eh...ApYkkErgoSigmanauts2024-04-16 20:53:07
33ErgoSigmanauts1243556346496.76confirmed1000.38121c61dad76dde6427.00https://explorer.ergoplatform.com/en/blocks/d5...d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114...9g4...iopyXErgoSigmanauts2024-04-15 13:26:36
34ErgoSigmanauts1243309317174.21confirmed1000.471232000391a2d9da27.01https://explorer.ergoplatform.com/en/blocks/d3...d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52...9i8...SKz8KErgoSigmanauts2024-04-15 05:58:59
35ErgoSigmanauts1243018353518.61confirmed1000.52124d61659aa64c7a27.08https://explorer.ergoplatform.com/en/blocks/a8...a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de...9iJ...j8zdCErgoSigmanauts2024-04-14 19:46:29
36ErgoSigmanauts1242682379295.33confirmed1001.3912200009ea03884927.02https://explorer.ergoplatform.com/en/blocks/2c...2c36f7618aef25e20373b4832dbbdc6f95784909a40218...9i8...SKz8KErgoSigmanauts2024-04-14 07:53:57
37ErgoSigmanauts1241796370202.41confirmed1001.9810c71b4fad01f31c27.05https://explorer.ergoplatform.com/en/blocks/39...3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2...9ex...WFksxErgoSigmanauts2024-04-13 01:40:15
38ErgoSigmanauts1240237406987.88confirmed1000.16100fe6c78281bfae27.13https://explorer.ergoplatform.com/en/blocks/c0...c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96...9i3...ZGLDLErgoSigmanauts2024-04-10 21:52:48
39ErgoSigmanauts1240101411836.85confirmed1000.1810da0014d0866a1a27.01https://explorer.ergoplatform.com/en/blocks/10...106552ecd414d016d00bb6aac33233b40e0de0e96752ad...9f7...MxEbMErgoSigmanauts2024-04-10 16:45:58
40ErgoSigmanauts1239922414752.68confirmed1000.3810111463352887a327.00https://explorer.ergoplatform.com/en/blocks/db...db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47...9i3...ZGLDLErgoSigmanauts2024-04-10 11:38:14
41ErgoSigmanauts1239612395105.08confirmed1001.2710c7e206ff3da33e27.03https://explorer.ergoplatform.com/en/blocks/c0...c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1...9ex...WFksxErgoSigmanauts2024-04-09 23:57:08
42ErgoSigmanauts1238592386279.12confirmed1000.6110c72dc2ea84ee3e27.00https://explorer.ergoplatform.com/en/blocks/91...915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1...9ex...WFksxErgoSigmanauts2024-04-08 14:35:09
43ErgoSigmanauts1238040399941.96confirmed1001.24101010806c3bfec230.00https://explorer.ergoplatform.com/en/blocks/ed...edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22...9eZ...zb9tDErgoSigmanauts2024-04-07 19:55:43
44ErgoSigmanauts1236735385434.15confirmed1000.68100d40c8c30375f930.03https://explorer.ergoplatform.com/en/blocks/f4...f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86...9g4...iopyXErgoSigmanauts2024-04-06 00:11:43
45ErgoSigmanauts1235990387916.17confirmed1000.5320058216259db39230.01https://explorer.ergoplatform.com/en/blocks/bd...bd3099462e5eba95a4e8e809232f6788f2664e4a344eae...9hT...fgbTVErgoSigmanauts2024-04-04 23:46:44
46ErgoSigmanauts1235365466883.93confirmed1000.17d0db3663848642f530.07https://explorer.ergoplatform.com/en/blocks/00...000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630...9i3...ZGLDLErgoSigmanauts2024-04-04 01:40:19
47ErgoSigmanauts1235136433886.50confirmed1000.35d4481db8a168230330.01https://explorer.ergoplatform.com/en/blocks/ba...babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e...9g4...iopyXErgoSigmanauts2024-04-03 18:22:18
48ErgoSigmanauts1234733425282.54confirmed1001.93d43cfb8db6bde05730.01https://explorer.ergoplatform.com/en/blocks/85...85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462...9gX...w5YtoErgoSigmanauts2024-04-03 04:57:28
49ErgoSigmanauts1232662385380.25confirmed1000.03d88e000ab46f7e8a30.00https://explorer.ergoplatform.com/en/blocks/bf...bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c...9eh...ApYkkErgoSigmanauts2024-03-31 07:40:29
50ErgoSigmanauts1232628363957.50confirmed1000.24d10ffd6af9eca40630.00https://explorer.ergoplatform.com/en/blocks/48...48044bb6835294495eb17744326b63f3183a629ab44767...9g4...iopyXErgoSigmanauts2024-03-31 06:53:18
51ErgoSigmanauts1232487360630.58confirmed1001.01dee5be1bf40de25e30.01https://explorer.ergoplatform.com/en/blocks/0f...0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121...9hT...fgbTVErgoSigmanauts2024-03-31 02:11:27
52ErgoSigmanauts1231651367785.41confirmed1000.47daa5cc820eedd3d930.00https://explorer.ergoplatform.com/en/blocks/20...20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78...9eh...ApYkkErgoSigmanauts2024-03-29 22:22:38
53ErgoSigmanauts1231144405099.84confirmed1000.33d88f00142c1483c130.00https://explorer.ergoplatform.com/en/blocks/27...278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139...9eh...ApYkkErgoSigmanauts2024-03-29 04:26:22
54ErgoSigmanauts1230782360986.50confirmed1000.03d00cd5ba5f2b167c30.09https://explorer.ergoplatform.com/en/blocks/33...3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370...9gX...w5YtoErgoSigmanauts2024-03-28 16:41:02
55ErgoSigmanauts1230749360986.50confirmed1000.29d8a48cee009b608c30.01https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gw...XhqysErgoSigmanauts2024-03-28 15:40:37
56ErgoSigmanauts1230547434381.38confirmed1000.80d6c1191549ab2f0730.03https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fY...4HpcPErgoSigmanauts2024-03-28 08:26:49
57ErgoSigmanauts1230104347635.80confirmed1004.75d153e8105c7c0b5730.00https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fY...4HpcPErgoSigmanauts2024-03-27 18:07:25
58ErgoSigmanauts1223980416310.69confirmed1000.90300b000932aead3a30.01https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8...SKz8KErgoSigmanauts2024-03-19 04:19:20
59ErgoSigmanauts1221911421209.62confirmed1002.87705c89a6a4e552cf30.01https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQ...bL3fJErgoSigmanauts2024-03-16 06:45:27
\n", - "
" - ], - "text/plain": [ - " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1253410 354831.66 confirmed \n", - "1 ErgoSigmanauts 1253118 362089.48 confirmed \n", - "2 ErgoSigmanauts 1252956 390351.08 confirmed \n", - "3 ErgoSigmanauts 1252929 390351.08 confirmed \n", - "4 ErgoSigmanauts 1252840 350627.70 confirmed \n", - "5 ErgoSigmanauts 1252559 422881.66 confirmed \n", - "6 ErgoSigmanauts 1252553 422881.66 confirmed \n", - "7 ErgoSigmanauts 1251978 380358.29 confirmed \n", - "8 ErgoSigmanauts 1251939 366775.44 confirmed \n", - "9 ErgoSigmanauts 1251871 366775.44 confirmed \n", - "10 ErgoSigmanauts 1251567 388383.16 confirmed \n", - "11 ErgoSigmanauts 1251499 388383.16 confirmed \n", - "12 ErgoSigmanauts 1249527 315887.25 confirmed \n", - "13 ErgoSigmanauts 1249440 315887.25 confirmed \n", - "14 ErgoSigmanauts 1249432 315887.25 confirmed \n", - "15 ErgoSigmanauts 1249230 361687.60 confirmed \n", - "16 ErgoSigmanauts 1248838 426627.60 confirmed \n", - "17 ErgoSigmanauts 1248716 402639.91 confirmed \n", - "18 ErgoSigmanauts 1248443 380709.27 confirmed \n", - "19 ErgoSigmanauts 1248031 396231.07 confirmed \n", - "20 ErgoSigmanauts 1247949 334193.98 confirmed \n", - "21 ErgoSigmanauts 1247906 334193.98 confirmed \n", - "22 ErgoSigmanauts 1247634 390680.08 confirmed \n", - "23 ErgoSigmanauts 1246555 371421.35 confirmed \n", - "24 ErgoSigmanauts 1246329 338457.84 confirmed \n", - "25 ErgoSigmanauts 1246316 338457.84 confirmed \n", - "26 ErgoSigmanauts 1246282 338457.84 confirmed \n", - "27 ErgoSigmanauts 1245573 345942.82 confirmed \n", - "28 ErgoSigmanauts 1245528 323130.13 confirmed \n", - "29 ErgoSigmanauts 1245375 343213.85 confirmed \n", - "30 ErgoSigmanauts 1245219 385248.18 confirmed \n", - "31 ErgoSigmanauts 1244611 350337.67 confirmed \n", - "32 ErgoSigmanauts 1244487 347763.78 confirmed \n", - "33 ErgoSigmanauts 1243556 346496.76 confirmed \n", - "34 ErgoSigmanauts 1243309 317174.21 confirmed \n", - "35 ErgoSigmanauts 1243018 353518.61 confirmed \n", - "36 ErgoSigmanauts 1242682 379295.33 confirmed \n", - "37 ErgoSigmanauts 1241796 370202.41 confirmed \n", - "38 ErgoSigmanauts 1240237 406987.88 confirmed \n", - "39 ErgoSigmanauts 1240101 411836.85 confirmed \n", - "40 ErgoSigmanauts 1239922 414752.68 confirmed \n", - "41 ErgoSigmanauts 1239612 395105.08 confirmed \n", - "42 ErgoSigmanauts 1238592 386279.12 confirmed \n", - "43 ErgoSigmanauts 1238040 399941.96 confirmed \n", - "44 ErgoSigmanauts 1236735 385434.15 confirmed \n", - "45 ErgoSigmanauts 1235990 387916.17 confirmed \n", - "46 ErgoSigmanauts 1235365 466883.93 confirmed \n", - "47 ErgoSigmanauts 1235136 433886.50 confirmed \n", - "48 ErgoSigmanauts 1234733 425282.54 confirmed \n", - "49 ErgoSigmanauts 1232662 385380.25 confirmed \n", - "50 ErgoSigmanauts 1232628 363957.50 confirmed \n", - "51 ErgoSigmanauts 1232487 360630.58 confirmed \n", - "52 ErgoSigmanauts 1231651 367785.41 confirmed \n", - "53 ErgoSigmanauts 1231144 405099.84 confirmed \n", - "54 ErgoSigmanauts 1230782 360986.50 confirmed \n", - "55 ErgoSigmanauts 1230749 360986.50 confirmed \n", - "56 ErgoSigmanauts 1230547 434381.38 confirmed \n", - "57 ErgoSigmanauts 1230104 347635.80 confirmed \n", - "58 ErgoSigmanauts 1223980 416310.69 confirmed \n", - "59 ErgoSigmanauts 1221911 421209.62 confirmed \n", - "\n", - " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 100 1.05 580c001f31e4fd3a 27.00 \n", - "1 100 0.65 50239669e1ac4af8 27.00 \n", - "2 100 0.11 57f9f469dba977c3 27.01 \n", - "3 100 0.31 5016a01340d6b9ba 27.65 \n", - "4 100 0.96 57f1000efc558ff1 27.02 \n", - "5 100 0.02 56dcc160776a8a71 27.02 \n", - "6 100 1.86 50230ed620a8fa0b 27.00 \n", - "7 100 0.11 50a3000448228642 27.00 \n", - "8 100 0.24 502468dac3622052 27.02 \n", - "9 100 1.04 50d8fd9c81187de2 27.01 \n", - "10 100 0.26 555f000b343364e4 27.01 \n", - "11 100 6.40 507971cae2ee4a18 27.00 \n", - "12 100 0.34 50164a42c64cc4f1 27.02 \n", - "13 100 0.02 50187b62b18da535 27.01 \n", - "14 100 0.64 5057d49b44b4ed21 27.01 \n", - "15 100 1.26 1bdb3e4628f615be 27.01 \n", - "16 100 0.35 186e549eb8340f12 27.03 \n", - "17 100 0.69 1c96000783680ce2 27.01 \n", - "18 100 1.00 188b8a2690b77569 27.01 \n", - "19 100 0.16 1c1800034e77b166 27.00 \n", - "20 100 0.09 1bf4a728749d7de8 27.00 \n", - "21 100 0.69 1a16000df5456083 27.03 \n", - "22 100 3.04 1a1329402f2206ed 27.07 \n", - "23 100 0.54 12fc6a2219199f2a 27.01 \n", - "24 100 0.03 1642835a069e4fb9 27.03 \n", - "25 100 0.07 146857274f45ac2c 27.18 \n", - "26 100 2.08 164237aca8296f1c 27.01 \n", - "27 100 0.12 12a8cc865d1eb6b1 27.00 \n", - "28 100 0.36 126a0007f2a34c7c 27.00 \n", - "29 100 0.38 126b001c1226e666 27.00 \n", - "30 100 1.36 123200132a4f0053 27.00 \n", - "31 100 0.30 13309b8b1531ac3d 27.00 \n", - "32 100 2.11 126b0037bf192dd9 27.00 \n", - "33 100 0.38 121c61dad76dde64 27.00 \n", - "34 100 0.47 1232000391a2d9da 27.01 \n", - "35 100 0.52 124d61659aa64c7a 27.08 \n", - "36 100 1.39 12200009ea038849 27.02 \n", - "37 100 1.98 10c71b4fad01f31c 27.05 \n", - "38 100 0.16 100fe6c78281bfae 27.13 \n", - "39 100 0.18 10da0014d0866a1a 27.01 \n", - "40 100 0.38 10111463352887a3 27.00 \n", - "41 100 1.27 10c7e206ff3da33e 27.03 \n", - "42 100 0.61 10c72dc2ea84ee3e 27.00 \n", - "43 100 1.24 101010806c3bfec2 30.00 \n", - "44 100 0.68 100d40c8c30375f9 30.03 \n", - "45 100 0.53 20058216259db392 30.01 \n", - "46 100 0.17 d0db3663848642f5 30.07 \n", - "47 100 0.35 d4481db8a1682303 30.01 \n", - "48 100 1.93 d43cfb8db6bde057 30.01 \n", - "49 100 0.03 d88e000ab46f7e8a 30.00 \n", - "50 100 0.24 d10ffd6af9eca406 30.00 \n", - "51 100 1.01 dee5be1bf40de25e 30.01 \n", - "52 100 0.47 daa5cc820eedd3d9 30.00 \n", - "53 100 0.33 d88f00142c1483c1 30.00 \n", - "54 100 0.03 d00cd5ba5f2b167c 30.09 \n", - "55 100 0.29 d8a48cee009b608c 30.01 \n", - "56 100 0.80 d6c1191549ab2f07 30.03 \n", - "57 100 4.75 d153e8105c7c0b57 30.00 \n", - "58 100 0.90 300b000932aead3a 30.01 \n", - "59 100 2.87 705c89a6a4e552cf 30.01 \n", - "\n", - " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/7a... \n", - "1 https://explorer.ergoplatform.com/en/blocks/44... \n", - "2 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "3 https://explorer.ergoplatform.com/en/blocks/88... \n", - "4 https://explorer.ergoplatform.com/en/blocks/93... \n", - "5 https://explorer.ergoplatform.com/en/blocks/f1... \n", - "6 https://explorer.ergoplatform.com/en/blocks/9d... \n", - "7 https://explorer.ergoplatform.com/en/blocks/58... \n", - "8 https://explorer.ergoplatform.com/en/blocks/a4... \n", - "9 https://explorer.ergoplatform.com/en/blocks/2b... \n", - "10 https://explorer.ergoplatform.com/en/blocks/f8... \n", - "11 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "12 https://explorer.ergoplatform.com/en/blocks/4f... \n", - "13 https://explorer.ergoplatform.com/en/blocks/22... \n", - "14 https://explorer.ergoplatform.com/en/blocks/ac... \n", - "15 https://explorer.ergoplatform.com/en/blocks/2f... \n", - "16 https://explorer.ergoplatform.com/en/blocks/17... \n", - "17 https://explorer.ergoplatform.com/en/blocks/5f... \n", - "18 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "19 https://explorer.ergoplatform.com/en/blocks/92... \n", - "20 https://explorer.ergoplatform.com/en/blocks/9a... \n", - "21 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "22 https://explorer.ergoplatform.com/en/blocks/c7... \n", - "23 https://explorer.ergoplatform.com/en/blocks/40... \n", - "24 https://explorer.ergoplatform.com/en/blocks/32... \n", - "25 https://explorer.ergoplatform.com/en/blocks/02... \n", - "26 https://explorer.ergoplatform.com/en/blocks/b2... \n", - "27 https://explorer.ergoplatform.com/en/blocks/b3... \n", - "28 https://explorer.ergoplatform.com/en/blocks/2d... \n", - "29 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "30 https://explorer.ergoplatform.com/en/blocks/32... \n", - "31 https://explorer.ergoplatform.com/en/blocks/4a... \n", - "32 https://explorer.ergoplatform.com/en/blocks/79... \n", - "33 https://explorer.ergoplatform.com/en/blocks/d5... \n", - "34 https://explorer.ergoplatform.com/en/blocks/d3... \n", - "35 https://explorer.ergoplatform.com/en/blocks/a8... \n", - "36 https://explorer.ergoplatform.com/en/blocks/2c... \n", - "37 https://explorer.ergoplatform.com/en/blocks/39... \n", - "38 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "39 https://explorer.ergoplatform.com/en/blocks/10... \n", - "40 https://explorer.ergoplatform.com/en/blocks/db... \n", - "41 https://explorer.ergoplatform.com/en/blocks/c0... \n", - "42 https://explorer.ergoplatform.com/en/blocks/91... \n", - "43 https://explorer.ergoplatform.com/en/blocks/ed... \n", - "44 https://explorer.ergoplatform.com/en/blocks/f4... \n", - "45 https://explorer.ergoplatform.com/en/blocks/bd... \n", - "46 https://explorer.ergoplatform.com/en/blocks/00... \n", - "47 https://explorer.ergoplatform.com/en/blocks/ba... \n", - "48 https://explorer.ergoplatform.com/en/blocks/85... \n", - "49 https://explorer.ergoplatform.com/en/blocks/bf... \n", - "50 https://explorer.ergoplatform.com/en/blocks/48... \n", - "51 https://explorer.ergoplatform.com/en/blocks/0f... \n", - "52 https://explorer.ergoplatform.com/en/blocks/20... \n", - "53 https://explorer.ergoplatform.com/en/blocks/27... \n", - "54 https://explorer.ergoplatform.com/en/blocks/33... \n", - "55 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "56 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "57 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "58 https://explorer.ergoplatform.com/en/blocks/83... \n", - "59 https://explorer.ergoplatform.com/en/blocks/47... \n", - "\n", - " hash miner \\\n", - "0 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... 9i8...SKz8K \n", - "1 44167cd62e4406f726826b15a0fcf6e843fade6c445102... 9i3...ZGLDL \n", - "2 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... 9fx...n2ewV \n", - "3 881144c4c46b08e39d59817863da508be56c215eafb8eb... 9fR...LUuxo \n", - "4 9395fce740c65f238690a5639a2938e0bce75b8a28b065... 9hN...TigVb \n", - "5 f12b63d2743427539774bdc9f76bb207fa7a82b659cfa4... 9hS...8ygPH \n", - "6 9d7544bf89b699e7d31eaf49c4b8610d62d6545c1de9d2... 9i3...ZGLDL \n", - "7 58be0effcc39dc7fc6bbc745acfd627ff3e30eab98668c... 9i8...SKz8K \n", - "8 a4dc120a4aa17097a163160eeb41c3dba31780f4086491... 9i3...ZGLDL \n", - "9 2be39f033f12f55638a0e9a8755b7f96b73d15b948990c... 9fx...n2ewV \n", - "10 f826ef482455161ca689de707f3c239b3ca8a6e7360a2c... 9g4...iopyX \n", - "11 c7c63f408c339ae4482914cbb8e93ad48b17defd20ec90... 9fH...HbNJx \n", - "12 4fea81e1a1a823f1c395a7d0757208381c9f6da4f68b83... 9fR...LUuxo \n", - "13 224c94abcd0ffa48553f6988c34bcb92c2490e76861f1c... 9f3...YsAik \n", - "14 acb0c18d072bc0fc0d0e69e95cb07ba996b53ef0ac669a... 9eZ...FsakQ \n", - "15 2f38ffbece540e4177f81615ad3130929dbf1855fcccff... 9gg...emSuT \n", - "16 177fd26d67b248b8fa2b0f734be71628114fa12249403a... 9iJ...j8zdC \n", - "17 5f999a0dbbaef1e2202acaa7a9c1dbea3cbcc7926dd9c8... 9f5...ceKR9 \n", - "18 2c43ae9a107e279e6aaf50ddda74652235cddc42d7f7e6... 9f3...YsAik \n", - "19 92e5d017e11243bae0295199fdab7b8b08ccb9363228ee... 9h6...YYYAb \n", - "20 9a9c4c8fbd571a877a7f197e40c4d33d265307b23634ad... 9g4...iopyX \n", - "21 2e086f5d1d55e2476586f0ae72caeb77d0093c2faef6c4... 9eh...ApYkk \n", - "22 c7b7ef3a8c7af63a7729de240de056beff246f9d99aebd... 9eh...ApYkk \n", - "23 40823fa0c172fc5f3a8ebcc79f8557f776d502abeceff0... 9g4...iopyX \n", - "24 3255824876c9afc17a051e4fec4f2fb9a502d91a31d60e... 9h6...YYYAb \n", - "25 023d3db990a609673fb2143fdfd110f959928864ee5ba0... 9fH...HbNJx \n", - "26 b25a01e4b603f883cbe139725e8377ea798ef7bf5e5ffb... 9h6...YYYAb \n", - "27 b3dc77df25368a64370eba7b7e0f2392e5a9c3fe4cd297... 9gX...w5Yto \n", - "28 2d2fd8c12850c9f1a00c38aa79aba813554f7a383c4be6... 9eh...ApYkk \n", - "29 d0b39e75edf0099c62ce1fc97bef7dd51695659255ec7f... 9eh...ApYkk \n", - "30 32df796eeeeb916349df58e3263011fc13e2064202638d... 9i8...SKz8K \n", - "31 4ac405b82c909606840b4abb83acd42e79aa74ac9dfcfa... 9gw...Xhqys \n", - "32 7994b89a991f3a3589d54772c4e30437894c691aa0dfd6... 9eh...ApYkk \n", - "33 d51a06c21ece88a1935e2eca6a3d1ba1e82507dc7cb114... 9g4...iopyX \n", - "34 d37d915b800e4b8fce3eb97ace72d1b8ecf1c35eecbf52... 9i8...SKz8K \n", - "35 a8134a002699294a2cb40e3f4eb3603ede1bdcae3cd0de... 9iJ...j8zdC \n", - "36 2c36f7618aef25e20373b4832dbbdc6f95784909a40218... 9i8...SKz8K \n", - "37 3951d2d140cca3c5138162008137ea4c703f1cdc4a16c2... 9ex...WFksx \n", - "38 c0e3620bcbce50d12b892ec9c42106e803157d14bcfc96... 9i3...ZGLDL \n", - "39 106552ecd414d016d00bb6aac33233b40e0de0e96752ad... 9f7...MxEbM \n", - "40 db56d46b7963b5dd508c2bdb1507303c8263e6ccad1b47... 9i3...ZGLDL \n", - "41 c006a33b7d2f4a4019919c278f5429608902fe3e51b1e1... 9ex...WFksx \n", - "42 915a48e58976142360cc5233b6033ad2a3e2f06cda7dc1... 9ex...WFksx \n", - "43 edd2c6e48ef6cc480c95a58dcb24c4125c1136d7aa4c22... 9eZ...zb9tD \n", - "44 f49ecdd5eff7e5d0d05d0eb65c7818f31fcd82ebf5df86... 9g4...iopyX \n", - "45 bd3099462e5eba95a4e8e809232f6788f2664e4a344eae... 9hT...fgbTV \n", - "46 000eacceb597c08feeb2a67ea6f0b804d9dc185c0e0630... 9i3...ZGLDL \n", - "47 babafdf183a977d3ef1cf8823f241e3393ac0472f9a00e... 9g4...iopyX \n", - "48 85775b03bae1f4c46c3b444bd511838d5fb9cd326c8462... 9gX...w5Yto \n", - "49 bfce9fe97cbc219e80858ee257f664fd3ad9ff713ed12c... 9eh...ApYkk \n", - "50 48044bb6835294495eb17744326b63f3183a629ab44767... 9g4...iopyX \n", - "51 0f56bc5a2f2b9f179c81feeab3022723bc60df72ad4121... 9hT...fgbTV \n", - "52 20b806d4bd9cc58f6cc04ffdeaffd6e68c07f66e422e78... 9eh...ApYkk \n", - "53 278a4a533165aa5c63f8f79bb8a1ab9d29e1a62d254139... 9eh...ApYkk \n", - "54 3360f32693fd991c229e6a3b095eb2ff6e0367dcbac370... 9gX...w5Yto \n", - "55 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... 9gw...Xhqys \n", - "56 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... 9fY...4HpcP \n", - "57 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... 9fY...4HpcP \n", - "58 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... 9i8...SKz8K \n", - "59 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... 9iQ...bL3fJ \n", - "\n", - " source time_found \n", - "0 ErgoSigmanauts 2024-04-29 08:20:04 \n", - "1 ErgoSigmanauts 2024-04-28 23:18:22 \n", - "2 ErgoSigmanauts 2024-04-28 17:16:48 \n", - "3 ErgoSigmanauts 2024-04-28 16:09:49 \n", - "4 ErgoSigmanauts 2024-04-28 12:59:58 \n", - "5 ErgoSigmanauts 2024-04-28 03:06:52 \n", - "6 ErgoSigmanauts 2024-04-28 02:55:03 \n", - "7 ErgoSigmanauts 2024-04-27 07:59:45 \n", - "8 ErgoSigmanauts 2024-04-27 06:54:45 \n", - "9 ErgoSigmanauts 2024-04-27 04:31:16 \n", - "10 ErgoSigmanauts 2024-04-26 18:24:58 \n", - "11 ErgoSigmanauts 2024-04-26 16:00:40 \n", - "12 ErgoSigmanauts 2024-04-23 22:19:10 \n", - "13 ErgoSigmanauts 2024-04-23 19:17:03 \n", - "14 ErgoSigmanauts 2024-04-23 19:06:49 \n", - "15 ErgoSigmanauts 2024-04-23 12:18:50 \n", - "16 ErgoSigmanauts 2024-04-22 22:07:16 \n", - "17 ErgoSigmanauts 2024-04-22 18:11:34 \n", - "18 ErgoSigmanauts 2024-04-22 09:12:21 \n", - "19 ErgoSigmanauts 2024-04-21 18:58:55 \n", - "20 ErgoSigmanauts 2024-04-21 16:57:09 \n", - "21 ErgoSigmanauts 2024-04-21 15:49:03 \n", - "22 ErgoSigmanauts 2024-04-21 05:49:18 \n", - "23 ErgoSigmanauts 2024-04-19 17:13:40 \n", - "24 ErgoSigmanauts 2024-04-19 10:06:26 \n", - "25 ErgoSigmanauts 2024-04-19 09:41:15 \n", - "26 ErgoSigmanauts 2024-04-19 08:45:52 \n", - "27 ErgoSigmanauts 2024-04-18 09:31:37 \n", - "28 ErgoSigmanauts 2024-04-18 08:01:31 \n", - "29 ErgoSigmanauts 2024-04-18 03:11:44 \n", - "30 ErgoSigmanauts 2024-04-17 21:39:45 \n", - "31 ErgoSigmanauts 2024-04-17 01:03:11 \n", - "32 ErgoSigmanauts 2024-04-16 20:53:07 \n", - "33 ErgoSigmanauts 2024-04-15 13:26:36 \n", - "34 ErgoSigmanauts 2024-04-15 05:58:59 \n", - "35 ErgoSigmanauts 2024-04-14 19:46:29 \n", - "36 ErgoSigmanauts 2024-04-14 07:53:57 \n", - "37 ErgoSigmanauts 2024-04-13 01:40:15 \n", - "38 ErgoSigmanauts 2024-04-10 21:52:48 \n", - "39 ErgoSigmanauts 2024-04-10 16:45:58 \n", - "40 ErgoSigmanauts 2024-04-10 11:38:14 \n", - "41 ErgoSigmanauts 2024-04-09 23:57:08 \n", - "42 ErgoSigmanauts 2024-04-08 14:35:09 \n", - "43 ErgoSigmanauts 2024-04-07 19:55:43 \n", - "44 ErgoSigmanauts 2024-04-06 00:11:43 \n", - "45 ErgoSigmanauts 2024-04-04 23:46:44 \n", - "46 ErgoSigmanauts 2024-04-04 01:40:19 \n", - "47 ErgoSigmanauts 2024-04-03 18:22:18 \n", - "48 ErgoSigmanauts 2024-04-03 04:57:28 \n", - "49 ErgoSigmanauts 2024-03-31 07:40:29 \n", - "50 ErgoSigmanauts 2024-03-31 06:53:18 \n", - "51 ErgoSigmanauts 2024-03-31 02:11:27 \n", - "52 ErgoSigmanauts 2024-03-29 22:22:38 \n", - "53 ErgoSigmanauts 2024-03-29 04:26:22 \n", - "54 ErgoSigmanauts 2024-03-28 16:41:02 \n", - "55 ErgoSigmanauts 2024-03-28 15:40:37 \n", - "56 ErgoSigmanauts 2024-03-28 08:26:49 \n", - "57 ErgoSigmanauts 2024-03-27 18:07:25 \n", - "58 ErgoSigmanauts 2024-03-19 04:19:20 \n", - "59 ErgoSigmanauts 2024-03-16 06:45:27 " - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "db_sync.update_block_data(timenow)\n", "db_sync.db.fetch_data('block')" @@ -1405,116 +57,10 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "id": "dde69db9-7336-4774-9332-ef4baf4d2517", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
feepaidblockslast_block_foundenabledminimumpaymentpayoutschemeconnectedminerspoolhashratesharespersecond...networkhashratenetworkdifficultylastnetworkblocktimeblockheightconnectedpeersrewardtypepooleffortpoolttfpriceinsert_time_stamp
00.91637.626309602024-04-29 08:20:04True0.5PPLNS4059.744.0...13.7417121.6490052024-04-29 21:11:23.8037661253802113POW168.1240.3191.332024-04-29 15:13:30.817364
\n", - "

1 rows × 21 columns

\n", - "
" - ], - "text/plain": [ - " fee paid blocks last_block_found enabled minimumpayment \\\n", - "0 0.9 1637.626309 60 2024-04-29 08:20:04 True 0.5 \n", - "\n", - " payoutscheme connectedminers poolhashrate sharespersecond ... \\\n", - "0 PPLNS 40 59.74 4.0 ... \n", - "\n", - " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", - "0 13.741712 1.649005 2024-04-29 21:11:23.803766 1253802 \n", - "\n", - " connectedpeers rewardtype pooleffort poolttf price \\\n", - "0 113 POW 168.124 0.319 1.33 \n", - "\n", - " insert_time_stamp \n", - "0 2024-04-29 15:13:30.817364 \n", - "\n", - "[1 rows x 21 columns]" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "db_sync.update_pool_stats(timenow)\n", "db_sync.db.fetch_data('stats')" @@ -1522,29 +68,10 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "e1de965a-d3e3-4e54-b7ab-a2c1e8f844da", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/plain": [ - "0.9" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "data = db_sync.db.fetch_data('stats')\n", "data = data[data.insert_time_stamp == max(data.insert_time_stamp)]\n", @@ -1553,2786 +80,32 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "cd8c2c61-4ba2-4740-9f3f-667c501d365e", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'fee': 0.9,\n", - " 'paid': 1637.626309487606,\n", - " 'blocks': 60,\n", - " 'last_block_found': '2024-04-29 08:20:04',\n", - " 'enabled': True,\n", - " 'minimumPayment': 0.5,\n", - " 'payoutScheme': 'PPLNS',\n", - " 'connectedMiners': 40,\n", - " 'poolHashrate': 59.74,\n", - " 'sharesPerSecond': 4,\n", - " 'networkType': 'mainnet',\n", - " 'networkHashrate': 13.741712072157867,\n", - " 'networkDifficulty': 1.649005448658944,\n", - " 'lastNetworkBlockTime': '2024-04-29T21:11:23.8037662Z',\n", - " 'blockHeight': 1253802,\n", - " 'connectedPeers': 113,\n", - " 'rewardType': 'POW',\n", - " 'insert_time_stamp': Timestamp('2024-04-29 15:13:30.817364'),\n", - " 'poolEffort': 168.124,\n", - " 'poolTTF': 0.319,\n", - " 'price': 1.33}" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "db_sync.data" ] }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "2ceade65-613b-413e-9c46-df3e12e15911", "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", - " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", - " 'sharespersecond', 'networktype', 'networkhashrate',\n", - " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", - " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", - " 'insert_time_stamp'],\n", - " dtype='object')\n", - "9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2TuYsAik 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtGYYYAb 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZZGLDL 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbTJM7tN 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzdHbNJx 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJw5Yto 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsmeFsakQ 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsNLUuxo 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxjprSrh 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zddSGtj 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL8ygPH 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvqfgbTV 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "no live data for miner 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvqfgbTV\n", - "9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQLLUaV 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5DUhcN 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJWFksx 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4Xhqys 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6qSZL4w 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggNcnMzN 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8yn2ewV 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZSKz8K 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCASaZmxt 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA9uUJN 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSHMxEbM 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "no live data for miner 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb\n", - "9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgCj8zdC 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5SemSuT 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89Tbadc 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SWceKR9 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5NfWd5MK 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Yon1dQ 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaMPRHTP 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZedzb9tD 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "no live data for miner 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN\n", - "9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuLNVE7S 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ58uHE 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "no live data for miner 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP\n", - "9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEuhcvT1 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n", - "9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJUip8z 0 9i8...SKz8K\n", - "1 9i3...ZGLDL\n", - "2 9fx...n2ewV\n", - "3 9fR...LUuxo\n", - "4 9hN...TigVb\n", - "5 9hS...8ygPH\n", - "6 9i3...ZGLDL\n", - "7 9i8...SKz8K\n", - "8 9i3...ZGLDL\n", - "9 9fx...n2ewV\n", - "10 9g4...iopyX\n", - "11 9fH...HbNJx\n", - "12 9fR...LUuxo\n", - "13 9f3...YsAik\n", - "14 9eZ...FsakQ\n", - "15 9gg...emSuT\n", - "16 9iJ...j8zdC\n", - "17 9f5...ceKR9\n", - "18 9f3...YsAik\n", - "19 9h6...YYYAb\n", - "20 9g4...iopyX\n", - "21 9eh...ApYkk\n", - "22 9eh...ApYkk\n", - "23 9g4...iopyX\n", - "24 9h6...YYYAb\n", - "25 9fH...HbNJx\n", - "26 9h6...YYYAb\n", - "27 9gX...w5Yto\n", - "28 9eh...ApYkk\n", - "29 9eh...ApYkk\n", - "30 9i8...SKz8K\n", - "31 9gw...Xhqys\n", - "32 9eh...ApYkk\n", - "33 9g4...iopyX\n", - "34 9i8...SKz8K\n", - "35 9iJ...j8zdC\n", - "36 9i8...SKz8K\n", - "37 9ex...WFksx\n", - "38 9i3...ZGLDL\n", - "39 9f7...MxEbM\n", - "40 9i3...ZGLDL\n", - "41 9ex...WFksx\n", - "42 9ex...WFksx\n", - "43 9eZ...zb9tD\n", - "44 9g4...iopyX\n", - "45 9hT...fgbTV\n", - "46 9i3...ZGLDL\n", - "47 9g4...iopyX\n", - "48 9gX...w5Yto\n", - "49 9eh...ApYkk\n", - "50 9g4...iopyX\n", - "51 9hT...fgbTV\n", - "52 9eh...ApYkk\n", - "53 9eh...ApYkk\n", - "54 9gX...w5Yto\n", - "55 9gw...Xhqys\n", - "56 9fY...4HpcP\n", - "57 9fY...4HpcP\n", - "58 9i8...SKz8K\n", - "59 9iQ...bL3fJ\n", - "Name: miner, dtype: object\n" - ] - } - ], + "outputs": [], "source": [ "db_sync.update_miner_data(timenow)" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "dc05f4bd-a2b9-4fb2-a57b-95f8ac26d9fe", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/plain": [ - "Index(['worker', 'hashrate', 'shares_per_second', 'created', 'miner', 'effort',\n", - " 'ttf', 'last_block_found'],\n", - " dtype='object')" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df = db_sync.db.fetch_data('live_worker')\n", "df.columns" @@ -4340,167 +113,10 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "id": "a48184cc-33de-4d81-834d-7861d2dd6e3c", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
workerhashrateshares_per_secondcreatedminer
0totals3291.310.292024-04-28 22:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
14x_3060ti497.760.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
26x_GIGABYTE877.680.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
36x_MIXED940.190.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
48x_3060ti1247.390.072024-04-28 23:00:009gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
..................
2704totals41.940.012024-04-29 17:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2705aliens6964.230.012024-04-29 18:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2706totals64.230.012024-04-29 18:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2707aliens6958.500.012024-04-29 19:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2708totals58.500.012024-04-29 19:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
\n", - "

2709 rows × 5 columns

\n", - "
" - ], - "text/plain": [ - " worker hashrate shares_per_second created \\\n", - "0 totals 3291.31 0.29 2024-04-28 22:00:00 \n", - "1 4x_3060ti 497.76 0.07 2024-04-28 23:00:00 \n", - "2 6x_GIGABYTE 877.68 0.07 2024-04-28 23:00:00 \n", - "3 6x_MIXED 940.19 0.07 2024-04-28 23:00:00 \n", - "4 8x_3060ti 1247.39 0.07 2024-04-28 23:00:00 \n", - "... ... ... ... ... \n", - "2704 totals 41.94 0.01 2024-04-29 17:00:00 \n", - "2705 aliens69 64.23 0.01 2024-04-29 18:00:00 \n", - "2706 totals 64.23 0.01 2024-04-29 18:00:00 \n", - "2707 aliens69 58.50 0.01 2024-04-29 19:00:00 \n", - "2708 totals 58.50 0.01 2024-04-29 19:00:00 \n", - "\n", - " miner \n", - "0 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "1 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "2 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "3 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "4 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "... ... \n", - "2704 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "2705 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "2706 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "2707 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "2708 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "\n", - "[2709 rows x 5 columns]" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df = db_sync.db.fetch_data('performance')\n", "df" @@ -4508,289 +124,20 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "id": "8ecf033f-d342-4aa2-aecd-27fee6ce4325", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Series([], Name: worker, dtype: object)" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df[df.created == '2024-04-27 05:00:00'].worker" ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "id": "e86e1e78-c04a-4f1d-b95b-5963bc69e0c5", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
createdhashrateshares_per_secondworkerminer
02024-04-28 20:00:00109.104928.986937
12024-04-28 21:00:00109.715929.066937
22024-04-28 22:00:00109.343289.006937
32024-04-28 23:00:00107.667409.406938
42024-04-29 00:00:00106.738669.026836
52024-04-29 01:00:00108.637889.026836
62024-04-29 02:00:00105.983589.226937
72024-04-29 03:00:00106.254829.126937
82024-04-29 04:00:00106.571729.046837
92024-04-29 05:00:00112.251729.487039
102024-04-29 06:00:00110.388149.387140
112024-04-29 07:00:00109.808949.367241
122024-04-29 08:00:00109.455129.207040
132024-04-29 09:00:00112.194689.266939
142024-04-29 10:00:00111.585109.206939
152024-04-29 11:00:00111.028709.226939
162024-04-29 12:00:00108.970649.126939
172024-04-29 13:00:00107.936809.106939
182024-04-29 14:00:00110.374709.507039
192024-04-29 15:00:00110.957429.367040
202024-04-29 16:00:00117.469749.787140
212024-04-29 17:00:00117.702889.547140
222024-04-29 18:00:00115.054569.427040
232024-04-29 19:00:00119.062149.787240
\n", - "
" - ], - "text/plain": [ - " created hashrate shares_per_second worker miner\n", - "0 2024-04-28 20:00:00 109.10492 8.98 69 37\n", - "1 2024-04-28 21:00:00 109.71592 9.06 69 37\n", - "2 2024-04-28 22:00:00 109.34328 9.00 69 37\n", - "3 2024-04-28 23:00:00 107.66740 9.40 69 38\n", - "4 2024-04-29 00:00:00 106.73866 9.02 68 36\n", - "5 2024-04-29 01:00:00 108.63788 9.02 68 36\n", - "6 2024-04-29 02:00:00 105.98358 9.22 69 37\n", - "7 2024-04-29 03:00:00 106.25482 9.12 69 37\n", - "8 2024-04-29 04:00:00 106.57172 9.04 68 37\n", - "9 2024-04-29 05:00:00 112.25172 9.48 70 39\n", - "10 2024-04-29 06:00:00 110.38814 9.38 71 40\n", - "11 2024-04-29 07:00:00 109.80894 9.36 72 41\n", - "12 2024-04-29 08:00:00 109.45512 9.20 70 40\n", - "13 2024-04-29 09:00:00 112.19468 9.26 69 39\n", - "14 2024-04-29 10:00:00 111.58510 9.20 69 39\n", - "15 2024-04-29 11:00:00 111.02870 9.22 69 39\n", - "16 2024-04-29 12:00:00 108.97064 9.12 69 39\n", - "17 2024-04-29 13:00:00 107.93680 9.10 69 39\n", - "18 2024-04-29 14:00:00 110.37470 9.50 70 39\n", - "19 2024-04-29 15:00:00 110.95742 9.36 70 40\n", - "20 2024-04-29 16:00:00 117.46974 9.78 71 40\n", - "21 2024-04-29 17:00:00 117.70288 9.54 71 40\n", - "22 2024-04-29 18:00:00 115.05456 9.42 70 40\n", - "23 2024-04-29 19:00:00 119.06214 9.78 72 40" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "aggregated_df = df.groupby('created').agg({\n", " 'hashrate': 'sum', # Sum of hashrate\n", @@ -4804,442 +151,20 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "id": "efd84d1e-1548-4d60-8e7a-d273f2b02293", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'10 MB'" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "db_sync.db.get_db_size()" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "id": "abc2ae53-86da-4e35-b943-7c932f82f68a", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
minerhashrateshares_per_secondworker
09eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...628.660.142
19eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...6327.640.283
29ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...9382.940.565
39eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf...598.400.122
49exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...2859.880.283
59f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y...519.600.102
69f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...9880.780.444
79f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...720.660.163
89f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...1064.040.162
99fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...398.660.082
109fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...5796.660.323
119fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj...4565.560.505
129fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...4073.100.282
139fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN...1741.140.122
149fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...1870.380.182
159fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q...2373.740.162
169fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT...5264.980.444
179g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...7890.660.646
189g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA...1431.460.223
199gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5...4126.200.383
209gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM...506.000.122
219gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...400.760.082
229gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...7177.320.565
239ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...904.660.203
249ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS...1361.420.122
259gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ...306.660.062
269gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...2660.420.142
279gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...153.340.042
289h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...6945.440.686
299hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...4175.620.303
309hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd...3954.640.404
319hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89...837.940.142
329htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju...3646.380.162
339hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ...3663.680.142
349i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...7775.740.404
359i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...2011.520.243
369iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...306.660.062
379iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...240.300.062
389iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...793.000.163
399iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...214.660.042
\n", - "
" - ], - "text/plain": [ - " miner hashrate \\\n", - "0 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... 628.66 \n", - "1 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... 6327.64 \n", - "2 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... 9382.94 \n", - "3 9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf... 598.40 \n", - "4 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... 2859.88 \n", - "5 9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y... 519.60 \n", - "6 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 9880.78 \n", - "7 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... 720.66 \n", - "8 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... 1064.04 \n", - "9 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... 398.66 \n", - "10 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... 5796.66 \n", - "11 9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj... 4565.56 \n", - "12 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... 4073.10 \n", - "13 9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN... 1741.14 \n", - "14 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... 1870.38 \n", - "15 9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q... 2373.74 \n", - "16 9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT... 5264.98 \n", - "17 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... 7890.66 \n", - "18 9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA... 1431.46 \n", - "19 9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5... 4126.20 \n", - "20 9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM... 506.00 \n", - "21 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 400.76 \n", - "22 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... 7177.32 \n", - "23 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... 904.66 \n", - "24 9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS... 1361.42 \n", - "25 9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ... 306.66 \n", - "26 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... 2660.42 \n", - "27 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... 153.34 \n", - "28 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... 6945.44 \n", - "29 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... 4175.62 \n", - "30 9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd... 3954.64 \n", - "31 9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89... 837.94 \n", - "32 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju... 3646.38 \n", - "33 9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ... 3663.68 \n", - "34 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... 7775.74 \n", - "35 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... 2011.52 \n", - "36 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... 306.66 \n", - "37 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... 240.30 \n", - "38 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... 793.00 \n", - "39 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... 214.66 \n", - "\n", - " shares_per_second worker \n", - "0 0.14 2 \n", - "1 0.28 3 \n", - "2 0.56 5 \n", - "3 0.12 2 \n", - "4 0.28 3 \n", - "5 0.10 2 \n", - "6 0.44 4 \n", - "7 0.16 3 \n", - "8 0.16 2 \n", - "9 0.08 2 \n", - "10 0.32 3 \n", - "11 0.50 5 \n", - "12 0.28 2 \n", - "13 0.12 2 \n", - "14 0.18 2 \n", - "15 0.16 2 \n", - "16 0.44 4 \n", - "17 0.64 6 \n", - "18 0.22 3 \n", - "19 0.38 3 \n", - "20 0.12 2 \n", - "21 0.08 2 \n", - "22 0.56 5 \n", - "23 0.20 3 \n", - "24 0.12 2 \n", - "25 0.06 2 \n", - "26 0.14 2 \n", - "27 0.04 2 \n", - "28 0.68 6 \n", - "29 0.30 3 \n", - "30 0.40 4 \n", - "31 0.14 2 \n", - "32 0.16 2 \n", - "33 0.14 2 \n", - "34 0.40 4 \n", - "35 0.24 3 \n", - "36 0.06 2 \n", - "37 0.06 2 \n", - "38 0.16 3 \n", - "39 0.04 2 " - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "df = db_sync.db.fetch_data('live_worker')\n", "df = df.groupby('miner').agg({\n", @@ -5253,819 +178,10 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "id": "cf513127-bb5c-48e1-aaef-d8ba9336f8b5", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
pendingsharespendingbalancetotalpaidtodaypaidschemapricelastpaymentlastpaymentlinkcreated_atminer
046.1693420.0000005.8719020.909460PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y...
150.3813050.00000065.2328791.490709PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ...
244.1710260.4434867.8907060.933902PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS...
340.0621010.3565449.3933140.739003PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA...
421.5371330.36853613.9638420.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH...
524.1317680.2689706.2243340.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE...
620.8191790.00000018.6802500.685726PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC...
722.5927950.4349595.6494560.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S...
814.9621780.45471317.8634770.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89...
92.9935560.1119410.5318270.531827PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr...
1018.2667630.00000020.1171920.559168PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW...
1114.8445160.1394424.7046810.604288PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf...
1211.8134330.0705993.2895520.501379PPLNS1.332024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y...
1313.7374220.4633714.6710980.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM...
1412.8326540.37459316.2735140.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed...
156.7380550.3303813.0795220.000000PPLNS1.332024-04-27https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD...
167.7743670.0767692.8635620.531781PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL...
170.3965360.0000000.0000000.000000PPLNS1.33N/AKeep Mining!2024-04-29 15:13:30.8173649iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...
185.9807890.1630430.0000000.000000PPLNS1.33N/AKeep Mining!2024-04-29 15:13:30.8173649gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ...
195.7831660.3487806.5795310.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...
201.7353020.1182900.3264440.000000PPLNS1.332024-04-23https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi...
214.5656260.2386691.0217170.000000PPLNS1.332024-04-28https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...
222.4410640.0329480.0000000.000000PPLNS1.33N/AKeep Mining!2024-04-29 15:13:30.8173649gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2358.3032520.0000007.3370061.189063PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q...
2447.2824900.00000019.8294370.943884PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN...
25240.3339920.000000112.1441924.897085PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
26226.4026990.000000294.0626774.638893PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...
27175.9390500.00000079.2945923.600629PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG...
28193.7335080.00000055.1784383.903811PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K...
29167.9796860.000000217.2385213.343489PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ...
30167.0578120.00000012.6730791.700399PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT...
31152.3077280.00000067.6556783.061028PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd...
32171.7143020.000000211.3056253.329568PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ...
3346.0868050.00000020.1814261.856590PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme...
34118.3907870.00000028.4874722.401307PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN...
35114.4352840.00000021.2488792.313482PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj...
36105.2875510.0000006.7911472.134692PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd...
3764.2237450.0000009.3662221.665936PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL...
389.2227120.00000021.2572510.865112PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq...
3970.6233610.4668685.3857280.000000PPLNS1.332024-04-24https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju...
4063.7333100.0000005.4735641.230819PPLNS1.332024-04-2https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ...
4134.4693720.28619450.6919840.841935PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5...
4272.9992400.00000057.9137531.463186PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ...
4354.4002030.00000069.8276491.091410PPLNS1.332024-04-29https://explorer.ergoplatform.com/en/transacti...2024-04-29 15:13:30.8173649gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4...
\n", - "
" - ], - "text/plain": [ - " pendingshares pendingbalance totalpaid todaypaid schema price \\\n", - "0 46.169342 0.000000 5.871902 0.909460 PPLNS 1.33 \n", - "1 50.381305 0.000000 65.232879 1.490709 PPLNS 1.33 \n", - "2 44.171026 0.443486 7.890706 0.933902 PPLNS 1.33 \n", - "3 40.062101 0.356544 9.393314 0.739003 PPLNS 1.33 \n", - "4 21.537133 0.368536 13.963842 0.000000 PPLNS 1.33 \n", - "5 24.131768 0.268970 6.224334 0.000000 PPLNS 1.33 \n", - "6 20.819179 0.000000 18.680250 0.685726 PPLNS 1.33 \n", - "7 22.592795 0.434959 5.649456 0.000000 PPLNS 1.33 \n", - "8 14.962178 0.454713 17.863477 0.000000 PPLNS 1.33 \n", - "9 2.993556 0.111941 0.531827 0.531827 PPLNS 1.33 \n", - "10 18.266763 0.000000 20.117192 0.559168 PPLNS 1.33 \n", - "11 14.844516 0.139442 4.704681 0.604288 PPLNS 1.33 \n", - "12 11.813433 0.070599 3.289552 0.501379 PPLNS 1.33 \n", - "13 13.737422 0.463371 4.671098 0.000000 PPLNS 1.33 \n", - "14 12.832654 0.374593 16.273514 0.000000 PPLNS 1.33 \n", - "15 6.738055 0.330381 3.079522 0.000000 PPLNS 1.33 \n", - "16 7.774367 0.076769 2.863562 0.531781 PPLNS 1.33 \n", - "17 0.396536 0.000000 0.000000 0.000000 PPLNS 1.33 \n", - "18 5.980789 0.163043 0.000000 0.000000 PPLNS 1.33 \n", - "19 5.783166 0.348780 6.579531 0.000000 PPLNS 1.33 \n", - "20 1.735302 0.118290 0.326444 0.000000 PPLNS 1.33 \n", - "21 4.565626 0.238669 1.021717 0.000000 PPLNS 1.33 \n", - "22 2.441064 0.032948 0.000000 0.000000 PPLNS 1.33 \n", - "23 58.303252 0.000000 7.337006 1.189063 PPLNS 1.33 \n", - "24 47.282490 0.000000 19.829437 0.943884 PPLNS 1.33 \n", - "25 240.333992 0.000000 112.144192 4.897085 PPLNS 1.33 \n", - "26 226.402699 0.000000 294.062677 4.638893 PPLNS 1.33 \n", - "27 175.939050 0.000000 79.294592 3.600629 PPLNS 1.33 \n", - "28 193.733508 0.000000 55.178438 3.903811 PPLNS 1.33 \n", - "29 167.979686 0.000000 217.238521 3.343489 PPLNS 1.33 \n", - "30 167.057812 0.000000 12.673079 1.700399 PPLNS 1.33 \n", - "31 152.307728 0.000000 67.655678 3.061028 PPLNS 1.33 \n", - "32 171.714302 0.000000 211.305625 3.329568 PPLNS 1.33 \n", - "33 46.086805 0.000000 20.181426 1.856590 PPLNS 1.33 \n", - "34 118.390787 0.000000 28.487472 2.401307 PPLNS 1.33 \n", - "35 114.435284 0.000000 21.248879 2.313482 PPLNS 1.33 \n", - "36 105.287551 0.000000 6.791147 2.134692 PPLNS 1.33 \n", - "37 64.223745 0.000000 9.366222 1.665936 PPLNS 1.33 \n", - "38 9.222712 0.000000 21.257251 0.865112 PPLNS 1.33 \n", - "39 70.623361 0.466868 5.385728 0.000000 PPLNS 1.33 \n", - "40 63.733310 0.000000 5.473564 1.230819 PPLNS 1.33 \n", - "41 34.469372 0.286194 50.691984 0.841935 PPLNS 1.33 \n", - "42 72.999240 0.000000 57.913753 1.463186 PPLNS 1.33 \n", - "43 54.400203 0.000000 69.827649 1.091410 PPLNS 1.33 \n", - "\n", - " lastpayment lastpaymentlink \\\n", - "0 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "1 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "2 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "3 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "4 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "5 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "6 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "7 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "8 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "9 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "10 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "11 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "12 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", - "13 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "14 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "15 2024-04-27 https://explorer.ergoplatform.com/en/transacti... \n", - "16 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "17 N/A Keep Mining! \n", - "18 N/A Keep Mining! \n", - "19 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "20 2024-04-23 https://explorer.ergoplatform.com/en/transacti... \n", - "21 2024-04-28 https://explorer.ergoplatform.com/en/transacti... \n", - "22 N/A Keep Mining! \n", - "23 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "24 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "25 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "26 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "27 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "28 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "29 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "30 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "31 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "32 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "33 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "34 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "35 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "36 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "37 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "38 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "39 2024-04-24 https://explorer.ergoplatform.com/en/transacti... \n", - "40 2024-04-2 https://explorer.ergoplatform.com/en/transacti... \n", - "41 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "42 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "43 2024-04-29 https://explorer.ergoplatform.com/en/transacti... \n", - "\n", - " created_at \\\n", - "0 2024-04-29 15:13:30.817364 \n", - "1 2024-04-29 15:13:30.817364 \n", - "2 2024-04-29 15:13:30.817364 \n", - "3 2024-04-29 15:13:30.817364 \n", - "4 2024-04-29 15:13:30.817364 \n", - "5 2024-04-29 15:13:30.817364 \n", - "6 2024-04-29 15:13:30.817364 \n", - "7 2024-04-29 15:13:30.817364 \n", - "8 2024-04-29 15:13:30.817364 \n", - "9 2024-04-29 15:13:30.817364 \n", - "10 2024-04-29 15:13:30.817364 \n", - "11 2024-04-29 15:13:30.817364 \n", - "12 2024-04-29 15:13:30.817364 \n", - "13 2024-04-29 15:13:30.817364 \n", - "14 2024-04-29 15:13:30.817364 \n", - "15 2024-04-29 15:13:30.817364 \n", - "16 2024-04-29 15:13:30.817364 \n", - "17 2024-04-29 15:13:30.817364 \n", - "18 2024-04-29 15:13:30.817364 \n", - "19 2024-04-29 15:13:30.817364 \n", - "20 2024-04-29 15:13:30.817364 \n", - "21 2024-04-29 15:13:30.817364 \n", - "22 2024-04-29 15:13:30.817364 \n", - "23 2024-04-29 15:13:30.817364 \n", - "24 2024-04-29 15:13:30.817364 \n", - "25 2024-04-29 15:13:30.817364 \n", - "26 2024-04-29 15:13:30.817364 \n", - "27 2024-04-29 15:13:30.817364 \n", - "28 2024-04-29 15:13:30.817364 \n", - "29 2024-04-29 15:13:30.817364 \n", - "30 2024-04-29 15:13:30.817364 \n", - "31 2024-04-29 15:13:30.817364 \n", - "32 2024-04-29 15:13:30.817364 \n", - "33 2024-04-29 15:13:30.817364 \n", - "34 2024-04-29 15:13:30.817364 \n", - "35 2024-04-29 15:13:30.817364 \n", - "36 2024-04-29 15:13:30.817364 \n", - "37 2024-04-29 15:13:30.817364 \n", - "38 2024-04-29 15:13:30.817364 \n", - "39 2024-04-29 15:13:30.817364 \n", - "40 2024-04-29 15:13:30.817364 \n", - "41 2024-04-29 15:13:30.817364 \n", - "42 2024-04-29 15:13:30.817364 \n", - "43 2024-04-29 15:13:30.817364 \n", - "\n", - " miner \n", - "0 9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8y... \n", - "1 9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZ... \n", - "2 9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCAS... \n", - "3 9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA... \n", - "4 9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSH... \n", - "5 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiE... \n", - "6 9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgC... \n", - "7 9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5S... \n", - "8 9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89... \n", - "9 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcr... \n", - "10 9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SW... \n", - "11 9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5Nf... \n", - "12 9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Y... \n", - "13 9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaM... \n", - "14 9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZed... \n", - "15 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRD... \n", - "16 9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuL... \n", - "17 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", - "18 9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ... \n", - "19 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... \n", - "20 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Gi... \n", - "21 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... \n", - "22 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "23 9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6q... \n", - "24 9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggN... \n", - "25 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "26 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... \n", - "27 9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtG... \n", - "28 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1K... \n", - "29 9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZ... \n", - "30 9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbT... \n", - "31 9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzd... \n", - "32 9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJ... \n", - "33 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsme... \n", - "34 9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsN... \n", - "35 9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxj... \n", - "36 9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zd... \n", - "37 9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL... \n", - "38 9hT1c9NNUeNF8nxcE4zyzb6Ui2ypFcSjNKxrSj3hJkQKvq... \n", - "39 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWju... \n", - "40 9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQ... \n", - "41 9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5... \n", - "42 9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJ... \n", - "43 9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4... " - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "payment = db_sync.db.fetch_data('payment')\n", "payment" From 6d5ac1de3c4abef7dbbcad2302dd260533cf9a87 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Tue, 30 Apr 2024 09:40:05 -0600 Subject: [PATCH 09/16] updated mining page with DB --- conf/conf.yaml | 3 +- layouts/front_page.py | 3 +- layouts/mining_page.py | 117 ++-- testing_2_db.ipynb | 1374 ++++++++++++++++++++++++++++++++++++++-- utils/api_2_db.py | 26 +- 5 files changed, 1418 insertions(+), 105 deletions(-) diff --git a/conf/conf.yaml b/conf/conf.yaml index 5f42e2d5..86cf1e98 100644 --- a/conf/conf.yaml +++ b/conf/conf.yaml @@ -53,6 +53,7 @@ default_values: 'Price NUMERIC', 'lastPayment VARCHAR(50)', 'lastPaymentLink TEXT', + 'participation NUMERIC', 'created_at TIMESTAMP', 'miner VARCHAR(100)'] @@ -61,4 +62,4 @@ default_values: 'ttf NUMERIC', 'last_block_found VARCHAR(100)'] performance_headers: ['worker VARCHAR(50)', 'hashrate NUMERIC', 'shares_per_second NUMERIC', - 'created TIMESTAMP', 'miner VARCHAR(60)'] + 'created TIMESTAMP', 'miner VARCHAR(60)'] \ No newline at end of file diff --git a/layouts/front_page.py b/layouts/front_page.py index 82824501..01cbfa57 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -222,6 +222,7 @@ def update_content(n, selected_data): 'reward': 'ERG Reward', 'confirmationprogress': 'Confirmation'}) df = block_df + df = df[:15] title = 'Blocks Data' elif selected_data == 'miners': @@ -423,4 +424,4 @@ def get_layout(reader): app = dash.Dash(__name__, external_stylesheets=[dbc.themes.BOOTSTRAP]) app.layout = get_layout() setup_front_page_callbacks(app) - app.run_server(debug=True) + app.run_server(debug=True) \ No newline at end of file diff --git a/layouts/mining_page.py b/layouts/mining_page.py index 6b673df4..125e3c7e 100644 --- a/layouts/mining_page.py +++ b/layouts/mining_page.py @@ -12,6 +12,11 @@ from flask_login import LoginManager, UserMixin, login_user from flask import Flask, request, session, redirect, url_for from flask_session import Session + +from utils.api_2_db import DataSyncer + +db_sync = DataSyncer(config_path="../conf") + debug = False server = Flask(__name__) server.config['SECRET_KEY'] = 'your_super_secret_key' # Change this to a random secret key @@ -36,18 +41,24 @@ def setup_mining_page_callbacks(app, reader): def update_front_row(n, pathname): - wallet = unquote(pathname.lstrip('/')) + miner = unquote(pathname.lstrip('/')) + wallet = miner - if wallet != 'Enter Your Address': - short_wallet = '{}...{}'.format(wallet[:5], wallet[-5:]) + if miner != 'Enter Your Address': + short_wallet = '{}...{}'.format(wallet[:3], wallet[-5:]) else: short_wallet = wallet - worker_df = reader.get_latest_worker_samples(True) - my_worker_df = worker_df[worker_df.Miner == short_wallet] - my_total_hash = round(list(my_worker_df.Hashrate)[0], ) - my_effort = list(my_worker_df.Effort)[0] - my_ttf = list(my_worker_df.TTF)[0] + worker_df = db_sync.db.fetch_data('live_worker') + total_df = worker_df[worker_df.worker == 'totals'] + my_worker_df = total_df[total_df.miner == miner] + my_total_hash = my_worker_df.hashrate.item() + my_effort = my_worker_df.effort.item() + my_ttf = my_worker_df.ttf.item() + + data = db_sync.db.fetch_data('stats') + data = data[data.insert_time_stamp == max(data.insert_time_stamp)] + block_df = reader.block_df block_df['miner'] = block_df['miner'].apply(lambda x: f"{x[:5]}...{x[-5:]}" if len(x) > 10 else x) @@ -56,9 +67,9 @@ def update_front_row(n, pathname): ### GATHERING POOL AND YOUR HASH TTF AND EFFORT ### - pool_effort_text = '{}%'.format(reader.data['poolEffort']) - pool_ttf_text = '{} Days'.format(reader.data['poolTTF']) - pool_hash_text = '{} GH/s'.format(reader.data['poolHashrate']) + pool_effort_text = '{}%'.format(data['pooleffort'].item()) + pool_ttf_text = '{} Days'.format(data['poolttf'].item()) + pool_hash_text = '{} GH/s'.format(data['poolhashrate'].item()) your_effort_text = '{}%'.format(my_effort) your_ttf_text = '{} Days'.format(my_ttf) @@ -95,18 +106,21 @@ def update_middle(n, pathname): wallet = unquote(pathname.lstrip('/')) ### PAYMENT STATS ### - my_payment = reader.get_miner_payment_stats(wallet) + payment = db_sync.db.fetch_data('payment') + my_payment = payment[payment.miner == wallet] + + # my_payment = reader.get_miner_payment_stats(wallet) payment_images ={ - 'Pending Shares': 'min-payout.png', - 'Pending Balance': 'triangle.png', - 'Total Paid': 'ergo.png', - 'Last Payment': 'coins.png', - 'Price': 'ergo.png', - 'Schema': 'ergo.png', + 'pendingshares': 'min-payout.png', + 'pendingbalance': 'triangle.png', + 'totalpaid': 'ergo.png', + 'lastpayment': 'coins.png', + 'price': 'ergo.png', + 'schema': 'ergo.png', } - payment_children = [create_image_text_block(text='{}: {}'.format(key, my_payment[key]), image=payment_images[key]) for key in payment_images.keys() if key != 'lastPaymentLink'] + payment_children = [create_image_text_block(text='{}: {}'.format(key, my_payment[key].item()), image=payment_images[key]) for key in payment_images.keys() if key != 'lastPaymentLink'] return payment_children[:3], payment_children[3:] @@ -118,40 +132,25 @@ def update_middle(n, pathname): [State('url', 'pathname')]) def update_outside(n, pathname): - wallet = unquote(pathname.lstrip('/')) + miner = unquote(pathname.lstrip('/')) ### PAYMENT STATS ### - my_payment = reader.get_miner_payment_stats(wallet) - all_payment_stats = [reader.get_miner_payment_stats(wallet) for wallet in reader.get_miner_ls()] - miners = reader.get_miner_ls() - ls = [] - for miner in miners: - d = reader.get_miner_payment_stats(miner) - shares = d['Pending Shares'] - ls.append([miner, shares]) - - df = pd.DataFrame(ls, columns=['Miner', 'Shares']) - total = df.Shares.sum() - df['participation'] = [shares / total for shares in df.Shares] - df['reward'] = df['participation'] * reader.block_reward - my_df = df[df.Miner == wallet] - try: - participation = round(my_df['participation'].values[0] * 100, 3) - except: - participation = 0 - # print(my_df['participation'], my_df) - - my_payment['Participation [%]']= participation + payment = db_sync.db.fetch_data('payment') + total = payment.pendingshares.sum() + payment['participation'] = [round(shares / total * 100, 2) for shares in payment.pendingshares] + my_payment = payment[payment.miner == miner] + + my_payment['Participation [%]']= my_payment['participation'].item() payment_images ={'Participation [%]': 'smileys.png', - 'Paid Today': 'ergo.png', - 'lastPaymentLink': 'ergo.png', + 'todaypaid': 'ergo.png', + 'lastpaymentlink': 'ergo.png', } - payment_children = [create_image_text_block(text='{}: {}'.format(key, my_payment[key]), image=payment_images[key]) for key in payment_images.keys() if key != 'lastPaymentLink'] + payment_children = [create_image_text_block(text='{}: {}'.format(key, my_payment[key].item()), image=payment_images[key]) for key in payment_images.keys() if key != 'lastpaymentlink'] link = html.Div(style=bottom_row_style, children=[ html.Img(src='assets/{}'.format('ergo.png'), style=bottom_image_style), - html.Span(dcc.Link('Last Payment Link', href=my_payment['lastPaymentLink'], target='_blank'), style={'padding': '10px'})]) + html.Span(dcc.Link('Last Payment Link', href=my_payment['lastpaymentlink'].item(), target='_blank'), style={'padding': '10px'})]) payment_children.append(link) @@ -165,10 +164,8 @@ def update_outside(n, pathname): def update_charts(n_intervals, pathname): wallet = unquote(pathname.lstrip('/')) - - block_df = reader.block_df # - worker_performace = reader.miner_sample_df - my_worker_performance = worker_performace[worker_performace.miner == wallet] + df = db_sync.db.fetch_data('performance') + my_worker_performance = df[df.miner == wallet] miner_performance_chart = px.line(my_worker_performance, x='created', @@ -200,24 +197,28 @@ def update_table(n_intervals, table, pathname): wallet = unquote(pathname.lstrip('/')) if wallet != 'Enter Your Address': - short_wallet = '{}...{}'.format(wallet[:5], wallet[-5:]) + short_wallet = '{}...{}'.format(wallet[:3], wallet[-5:]) else: short_wallet = wallet if table == 'workers': - df = reader.get_latest_worker_samples(False) - df = df[df.miner == wallet] - df = df.filter(['worker', 'hashrate', 'sharesPerSecond', 'Effort', 'TTF']) - df = df.rename(columns={"Effort": "Current Effort [%]", "hashrate": "MH/s", 'TTF': 'TTF [Days]'}) + df = db_sync.db.fetch_data('live_worker') + + df = df[df.miner == wallet] + df = df[df.worker != 'totals'] + df = df.filter(['worker', 'hashrate', 'sharesPerSecond', 'effort', 'ttf']) + df = df.rename(columns={"effort": "Current Effort [%]", "hashrate": "MH/s", 'ttf': 'TTF [Days]'}) title_2 = 'WORKER DATA' elif table == 'blocks': - block_df = reader.block_df # - my_block_df = block_df[block_df.miner == wallet] + block_df = db_sync.db.fetch_data('block') + my_block_df = block_df[block_df.miner == short_wallet] df = my_block_df print(df.columns) - df = df.filter(['Time Found', 'blockHeight', 'effort [%]', 'reward [erg]', 'Confirmation [%]']) + df = df.filter(['time_found', 'blockheight', 'effort', 'reward', 'confirmationprogress']) + df = df.rename(columns={'time_found': 'Time Found', 'blockheight': 'Height', + 'effort': 'Effort [%]', 'confirmationprogress': 'Confirmation [%]'}) title_2 = 'Your Blocks Found' columns = [{"name": i, "id": i} for i in df.columns] @@ -265,7 +266,7 @@ def get_layout(reader): {'label': 'Your Worker Data', 'value': 'workers'}, {'label': 'Your Block Data', 'value': 'blocks'} ], - value='workers', # Default value + value='blocks', # Default value style={'width': '300px', 'color': 'black'} ), style={'flex': '1'} diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index 59f70070..faf0eb7c 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "96944386-e139-4ef4-9d86-26463244ff6f", "metadata": {}, "outputs": [], @@ -13,20 +13,43 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "11604c9d-4ef6-48da-939f-fac113478414", "metadata": {}, "outputs": [], "source": [ - "db_sync = DataSyncer(config_path=\"../conf\")" + "db_sync = DataSyncer(config_path=\"../conf\")\n", + "miner = '9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Batch 1/1: Deleted up to 10 rows from stats\n", + "Batch 1/1: Deleted up to 10000 rows from block\n", + "Batch 1/1: Deleted up to 10000 rows from payment\n", + "Batch 1/1: Deleted up to 10000 rows from live_worker\n", + "Batch 1/1: Deleted up to 10000 rows from performance\n" + ] + }, + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.__delete_table__()\n", "db_sync.__create_table__()" @@ -34,7 +57,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "id": "2736017b-7f7c-4f92-a8f0-9098dbcad123", "metadata": {}, "outputs": [], @@ -44,12 +67,312 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "fedbaf9b-d0df-4450-8584-27b4b4d5dc5a", "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
poolidblockheightnetworkdifficultystatusconfirmationprogressefforttransactionconfirmationdatarewardinfolinkhashminersourcetime_found
0ErgoSigmanauts1254265386513.23pending823.16501090b5ff36737c27.02https://explorer.ergoplatform.com/en/blocks/0e...0e48a40b9cdffafc5448cf5c0255a5baa96cd88292bf2a...9h6...YYYAbErgoSigmanauts2024-04-30 12:52:07
1ErgoSigmanauts1253410354831.66confirmed1001.05580c001f31e4fd3a27.00https://explorer.ergoplatform.com/en/blocks/7a...7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...9i8...SKz8KErgoSigmanauts2024-04-29 08:20:04
2ErgoSigmanauts1253118362089.48confirmed1000.6550239669e1ac4af827.00https://explorer.ergoplatform.com/en/blocks/44...44167cd62e4406f726826b15a0fcf6e843fade6c445102...9i3...ZGLDLErgoSigmanauts2024-04-28 23:18:22
3ErgoSigmanauts1252956390351.08confirmed1000.1157f9f469dba977c327.01https://explorer.ergoplatform.com/en/blocks/d0...d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...9fx...n2ewVErgoSigmanauts2024-04-28 17:16:48
4ErgoSigmanauts1252929390351.08confirmed1000.315016a01340d6b9ba27.65https://explorer.ergoplatform.com/en/blocks/88...881144c4c46b08e39d59817863da508be56c215eafb8eb...9fR...LUuxoErgoSigmanauts2024-04-28 16:09:49
..........................................
56ErgoSigmanauts1230749360986.50confirmed1000.29d8a48cee009b608c30.01https://explorer.ergoplatform.com/en/blocks/2e...2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...9gw...XhqysErgoSigmanauts2024-03-28 15:40:37
57ErgoSigmanauts1230547434381.38confirmed1000.80d6c1191549ab2f0730.03https://explorer.ergoplatform.com/en/blocks/c5...c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...9fY...4HpcPErgoSigmanauts2024-03-28 08:26:49
58ErgoSigmanauts1230104347635.80confirmed1004.75d153e8105c7c0b5730.00https://explorer.ergoplatform.com/en/blocks/b0...b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...9fY...4HpcPErgoSigmanauts2024-03-27 18:07:25
59ErgoSigmanauts1223980416310.69confirmed1000.90300b000932aead3a30.01https://explorer.ergoplatform.com/en/blocks/83...83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...9i8...SKz8KErgoSigmanauts2024-03-19 04:19:20
60ErgoSigmanauts1221911421209.62confirmed1002.87705c89a6a4e552cf30.01https://explorer.ergoplatform.com/en/blocks/47...47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...9iQ...bL3fJErgoSigmanauts2024-03-16 06:45:27
\n", + "

61 rows × 13 columns

\n", + "
" + ], + "text/plain": [ + " poolid blockheight networkdifficulty status \\\n", + "0 ErgoSigmanauts 1254265 386513.23 pending \n", + "1 ErgoSigmanauts 1253410 354831.66 confirmed \n", + "2 ErgoSigmanauts 1253118 362089.48 confirmed \n", + "3 ErgoSigmanauts 1252956 390351.08 confirmed \n", + "4 ErgoSigmanauts 1252929 390351.08 confirmed \n", + ".. ... ... ... ... \n", + "56 ErgoSigmanauts 1230749 360986.50 confirmed \n", + "57 ErgoSigmanauts 1230547 434381.38 confirmed \n", + "58 ErgoSigmanauts 1230104 347635.80 confirmed \n", + "59 ErgoSigmanauts 1223980 416310.69 confirmed \n", + "60 ErgoSigmanauts 1221911 421209.62 confirmed \n", + "\n", + " confirmationprogress effort transactionconfirmationdata reward \\\n", + "0 82 3.16 501090b5ff36737c 27.02 \n", + "1 100 1.05 580c001f31e4fd3a 27.00 \n", + "2 100 0.65 50239669e1ac4af8 27.00 \n", + "3 100 0.11 57f9f469dba977c3 27.01 \n", + "4 100 0.31 5016a01340d6b9ba 27.65 \n", + ".. ... ... ... ... \n", + "56 100 0.29 d8a48cee009b608c 30.01 \n", + "57 100 0.80 d6c1191549ab2f07 30.03 \n", + "58 100 4.75 d153e8105c7c0b57 30.00 \n", + "59 100 0.90 300b000932aead3a 30.01 \n", + "60 100 2.87 705c89a6a4e552cf 30.01 \n", + "\n", + " infolink \\\n", + "0 https://explorer.ergoplatform.com/en/blocks/0e... \n", + "1 https://explorer.ergoplatform.com/en/blocks/7a... \n", + "2 https://explorer.ergoplatform.com/en/blocks/44... \n", + "3 https://explorer.ergoplatform.com/en/blocks/d0... \n", + "4 https://explorer.ergoplatform.com/en/blocks/88... \n", + ".. ... \n", + "56 https://explorer.ergoplatform.com/en/blocks/2e... \n", + "57 https://explorer.ergoplatform.com/en/blocks/c5... \n", + "58 https://explorer.ergoplatform.com/en/blocks/b0... \n", + "59 https://explorer.ergoplatform.com/en/blocks/83... \n", + "60 https://explorer.ergoplatform.com/en/blocks/47... \n", + "\n", + " hash miner \\\n", + "0 0e48a40b9cdffafc5448cf5c0255a5baa96cd88292bf2a... 9h6...YYYAb \n", + "1 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... 9i8...SKz8K \n", + "2 44167cd62e4406f726826b15a0fcf6e843fade6c445102... 9i3...ZGLDL \n", + "3 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... 9fx...n2ewV \n", + "4 881144c4c46b08e39d59817863da508be56c215eafb8eb... 9fR...LUuxo \n", + ".. ... ... \n", + "56 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... 9gw...Xhqys \n", + "57 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... 9fY...4HpcP \n", + "58 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... 9fY...4HpcP \n", + "59 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... 9i8...SKz8K \n", + "60 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... 9iQ...bL3fJ \n", + "\n", + " source time_found \n", + "0 ErgoSigmanauts 2024-04-30 12:52:07 \n", + "1 ErgoSigmanauts 2024-04-29 08:20:04 \n", + "2 ErgoSigmanauts 2024-04-28 23:18:22 \n", + "3 ErgoSigmanauts 2024-04-28 17:16:48 \n", + "4 ErgoSigmanauts 2024-04-28 16:09:49 \n", + ".. ... ... \n", + "56 ErgoSigmanauts 2024-03-28 15:40:37 \n", + "57 ErgoSigmanauts 2024-03-28 08:26:49 \n", + "58 ErgoSigmanauts 2024-03-27 18:07:25 \n", + "59 ErgoSigmanauts 2024-03-19 04:19:20 \n", + "60 ErgoSigmanauts 2024-03-16 06:45:27 \n", + "\n", + "[61 rows x 13 columns]" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.update_block_data(timenow)\n", "db_sync.db.fetch_data('block')" @@ -57,10 +380,116 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "dde69db9-7336-4774-9332-ef4baf4d2517", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
feepaidblockslast_block_foundenabledminimumpaymentpayoutschemeconnectedminerspoolhashratesharespersecond...networkhashratenetworkdifficultylastnetworkblocktimeblockheightconnectedpeersrewardtypepooleffortpoolttfpriceinsert_time_stamp
00.91637.626309612024-04-30 12:52:07True0.5PPLNS4056.664.0...13.3762461.605152024-04-30 15:37:36.9585421254331109POW35.20.331.292024-04-30 09:38:19.382095
\n", + "

1 rows × 21 columns

\n", + "
" + ], + "text/plain": [ + " fee paid blocks last_block_found enabled minimumpayment \\\n", + "0 0.9 1637.626309 61 2024-04-30 12:52:07 True 0.5 \n", + "\n", + " payoutscheme connectedminers poolhashrate sharespersecond ... \\\n", + "0 PPLNS 40 56.66 4.0 ... \n", + "\n", + " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", + "0 13.376246 1.60515 2024-04-30 15:37:36.958542 1254331 \n", + "\n", + " connectedpeers rewardtype pooleffort poolttf price \\\n", + "0 109 POW 35.2 0.33 1.29 \n", + "\n", + " insert_time_stamp \n", + "0 2024-04-30 09:38:19.382095 \n", + "\n", + "[1 rows x 21 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.update_pool_stats(timenow)\n", "db_sync.db.fetch_data('stats')" @@ -68,10 +497,29 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "id": "e1de965a-d3e3-4e54-b7ab-a2c1e8f844da", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/plain": [ + "0.9" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "data = db_sync.db.fetch_data('stats')\n", "data = data[data.insert_time_stamp == max(data.insert_time_stamp)]\n", @@ -80,45 +528,848 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "cd8c2c61-4ba2-4740-9f3f-667c501d365e", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'fee': 0.9,\n", + " 'paid': 1637.626309487606,\n", + " 'blocks': 61,\n", + " 'last_block_found': '2024-04-30 12:52:07',\n", + " 'enabled': True,\n", + " 'minimumPayment': 0.5,\n", + " 'payoutScheme': 'PPLNS',\n", + " 'connectedMiners': 40,\n", + " 'poolHashrate': 56.66,\n", + " 'sharesPerSecond': 4,\n", + " 'networkType': 'mainnet',\n", + " 'networkHashrate': 13.3762461466624,\n", + " 'networkDifficulty': 1.605149537599488,\n", + " 'lastNetworkBlockTime': '2024-04-30T15:37:36.9585415Z',\n", + " 'blockHeight': 1254331,\n", + " 'connectedPeers': 109,\n", + " 'rewardType': 'POW',\n", + " 'insert_time_stamp': Timestamp('2024-04-30 09:38:19.382095'),\n", + " 'poolEffort': 35.2,\n", + " 'poolTTF': 0.33,\n", + " 'price': 1.29}" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "db_sync.data" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "2ceade65-613b-413e-9c46-df3e12e15911", "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", + " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", + " 'sharespersecond', 'networktype', 'networkhashrate',\n", + " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", + " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", + " 'insert_time_stamp'],\n", + " dtype='object')\n", + "9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2TuYsAik 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtGYYYAb 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJw5Yto 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZZGLDL 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzdHbNJx 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbTJM7tN 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsmeFsakQ 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "no live data for miner 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsmeFsakQ\n", + "9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsNLUuxo 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zddSGtj 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxjprSrh 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL8ygPH 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5DUhcN 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJWFksx 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQLLUaV 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4Xhqys 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggNcnMzN 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6qSZL4w 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCASaZmxt 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8yn2ewV 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZSKz8K 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA9uUJN 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSHMxEbM 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9eYXGx2AzwzbgThF7sU2JKspqUbhr5nMgnVNokNSWx7SFYYbvvV 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5SemSuT 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgCj8zdC 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SWceKR9 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89Tbadc 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Yon1dQ 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaMPRHTP 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5NfWd5MK 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "no live data for miner 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J\n", + "9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZedzb9tD 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "no live data for miner 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN\n", + "9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ58uHE 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuLNVE7S 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "no live data for miner 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP\n", + "9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEuhcvT1 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n", + "9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJUip8z 0 9h6...YYYAb\n", + "1 9i8...SKz8K\n", + "2 9i3...ZGLDL\n", + "3 9fx...n2ewV\n", + "4 9fR...LUuxo\n", + " ... \n", + "56 9gw...Xhqys\n", + "57 9fY...4HpcP\n", + "58 9fY...4HpcP\n", + "59 9i8...SKz8K\n", + "60 9iQ...bL3fJ\n", + "Name: miner, Length: 61, dtype: object\n" + ] + } + ], "source": [ "db_sync.update_miner_data(timenow)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "id": "dc05f4bd-a2b9-4fb2-a57b-95f8ac26d9fe", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
workerhashrateshares_per_secondcreatedminereffortttflast_block_found
0Rig-011835.00.072024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...67.6410.122024-04-23 19:17:03
1Rig-022598.00.072024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...95.777.152024-04-23 19:17:03
2Rig_031590.00.082024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...58.6111.682024-04-23 19:17:03
3totals6023.00.222024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...222.013.082024-04-23 19:17:03
4GRAYSPEAK2488.00.072024-04-30 15:36:349ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...120.437.472024-04-21 15:49:03
...........................
110totals161.00.042024-04-30 15:38:349iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...39.32115.392024-03-16 06:45:27
111waga115.00.032024-04-30 15:38:349gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...0.00161.55N/A
112totals115.00.032024-04-30 15:38:349gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...0.00161.55N/A
113aliens6928.00.012024-04-30 15:38:349gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...0.00663.50N/A
114totals28.00.012024-04-30 15:38:349gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...0.00663.50N/A
\n", + "

115 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " worker hashrate shares_per_second created \\\n", + "0 Rig-01 1835.0 0.07 2024-04-30 15:36:34 \n", + "1 Rig-02 2598.0 0.07 2024-04-30 15:36:34 \n", + "2 Rig_03 1590.0 0.08 2024-04-30 15:36:34 \n", + "3 totals 6023.0 0.22 2024-04-30 15:36:34 \n", + "4 GRAYSPEAK 2488.0 0.07 2024-04-30 15:36:34 \n", + ".. ... ... ... ... \n", + "110 totals 161.0 0.04 2024-04-30 15:38:34 \n", + "111 waga 115.0 0.03 2024-04-30 15:38:34 \n", + "112 totals 115.0 0.03 2024-04-30 15:38:34 \n", + "113 aliens69 28.0 0.01 2024-04-30 15:38:34 \n", + "114 totals 28.0 0.01 2024-04-30 15:38:34 \n", + "\n", + " miner effort ttf \\\n", + "0 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 67.64 10.12 \n", + "1 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 95.77 7.15 \n", + "2 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 58.61 11.68 \n", + "3 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 222.01 3.08 \n", + "4 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... 120.43 7.47 \n", + ".. ... ... ... \n", + "110 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... 39.32 115.39 \n", + "111 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 0.00 161.55 \n", + "112 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 0.00 161.55 \n", + "113 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... 0.00 663.50 \n", + "114 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... 0.00 663.50 \n", + "\n", + " last_block_found \n", + "0 2024-04-23 19:17:03 \n", + "1 2024-04-23 19:17:03 \n", + "2 2024-04-23 19:17:03 \n", + "3 2024-04-23 19:17:03 \n", + "4 2024-04-21 15:49:03 \n", + ".. ... \n", + "110 2024-03-16 06:45:27 \n", + "111 N/A \n", + "112 N/A \n", + "113 N/A \n", + "114 N/A \n", + "\n", + "[115 rows x 8 columns]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "df = db_sync.db.fetch_data('live_worker')\n", - "df.columns" + "df" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "id": "a48184cc-33de-4d81-834d-7861d2dd6e3c", "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "SyntaxError", + "evalue": "invalid decimal literal (1005857483.py, line 1)", + "output_type": "error", + "traceback": [ + "\u001b[0;36m Cell \u001b[0;32mIn[11], line 1\u001b[0;36m\u001b[0m\n\u001b[0;31m df = db_sync.db.fetch_data('performance')\t9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk\u001b[0m\n\u001b[0m \t^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid decimal literal\n" + ] + } + ], "source": [ - "df = db_sync.db.fetch_data('performance')\n", + "df = db_sync.db.fetch_data('performance')\t9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk\n", + "\t14.83\n", + "\t60.52\n", + "\t2024-04-21 15:49:03\n", "df" ] }, @@ -136,7 +1387,9 @@ "cell_type": "code", "execution_count": null, "id": "e86e1e78-c04a-4f1d-b95b-5963bc69e0c5", - "metadata": {}, + "metadata": { + "scrolled": true + }, "outputs": [], "source": [ "aggregated_df = df.groupby('created').agg({\n", @@ -162,28 +1415,28 @@ { "cell_type": "code", "execution_count": null, - "id": "abc2ae53-86da-4e35-b943-7c932f82f68a", - "metadata": {}, + "id": "cf513127-bb5c-48e1-aaef-d8ba9336f8b5", + "metadata": { + "scrolled": true + }, "outputs": [], "source": [ - "df = db_sync.db.fetch_data('live_worker')\n", - "df = df.groupby('miner').agg({\n", - " 'hashrate': 'sum', # Sum of hashrate\n", - " 'shares_per_second': 'sum', # Sum of shares_per_second\n", - " 'worker': 'nunique', # Count of unique workers\n", - " # 'miner': 'miner' # Count of unique miners\n", - "}).reset_index()\n", - "df" + "payment = db_sync.db.fetch_data('payment')\n", + "total = payment.pendingshares.sum()\n", + "payment['participation'] = [round(shares / total * 100, 2) for shares in payment.pendingshares] \n", + "my_payment = payment[payment.miner == miner]\n", + "my_payment" ] }, { "cell_type": "code", "execution_count": null, - "id": "cf513127-bb5c-48e1-aaef-d8ba9336f8b5", - "metadata": {}, + "id": "f7483d65-b94b-4c2a-ac9c-f91db66dc8d0", + "metadata": { + "scrolled": true + }, "outputs": [], "source": [ - "payment = db_sync.db.fetch_data('payment')\n", "payment" ] }, @@ -193,6 +1446,55 @@ "id": "1a522ea1-61b5-45af-ad5b-e58076459355", "metadata": {}, "outputs": [], + "source": [ + "worker_df = db_sync.db.fetch_data('live_worker')\n", + "\n", + "worker_df" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "23af04c5-4277-4f74-9b03-ccc7a1cd76b9", + "metadata": {}, + "outputs": [], + "source": [ + "total_df = worker_df[worker_df.worker == 'totals']\n", + "my_worker_df = total_df[total_df.miner == miner]\n", + "my_worker_df" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "34d53fc9-ebae-4aae-a4a5-aba51b7cf93c", + "metadata": {}, + "outputs": [], + "source": [ + "my_total_hash = my_worker_df.hashrate.item()\n", + "my_total_hash" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ce8c5380-f23e-481f-9981-11a86112b248", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "url = '{}/{}/{}'.format(db_sync.base_api, 'miners', miner)\n", + "mining_data = db_sync.get_api_data(url) \n", + "mining_data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5bdddb9d-f954-42b0-a637-98636c813226", + "metadata": {}, + "outputs": [], "source": [] } ], diff --git a/utils/api_2_db.py b/utils/api_2_db.py index 36bc5848..75492839 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -174,14 +174,14 @@ def update_pool_stats(self, timenow): self.data['networkHashrate'] = self.data['networkHashrate'] / 1e12 # Terra Hash/Second self.data['networkDifficulty'] = self.data['networkDifficulty'] / 1e15 # Peta self.data['insert_time_stamp'] = timenow - self.data['poolEffort'] = self.calculate_mining_effort(self.data['networkDifficulty'], + self.data['poolEffort'] = round(self.calculate_mining_effort(self.data['networkDifficulty'], self.data['networkHashrate'], self.data['poolHashrate'] * 1e3, - last_block_found) + last_block_found), 2) - self.data['poolTTF'] = self.calculate_time_to_find_block(self.data['networkDifficulty'], + self.data['poolTTF'] = round(self.calculate_time_to_find_block(self.data['networkDifficulty'], self.data['networkHashrate'], - self.data['poolHashrate'] * 1e3) + self.data['poolHashrate'] * 1e3), 2) self.data['price'] = self.price_reader.get()[1] del self.data['payoutSchemeConfig'] @@ -223,6 +223,7 @@ def update_miner_data(self, timenow): stats = self.db.fetch_data('stats') print(stats.columns) stats = stats[stats.insert_time_stamp == max(stats.insert_time_stamp)] + block_data = self.db.fetch_data('block') networkHashrate = stats['networkhashrate'].item() # use logic to get the lastest not just the first index networkDifficulty = stats['networkdifficulty'].item() @@ -233,7 +234,10 @@ def update_miner_data(self, timenow): payment_data = {k: v for k, v in mining_data.items() if k not in ['performance', 'performanceSamples']} payment_data['Schema'] = 'PPLNS' payment_data['Price'] = erg_price - + payment_data['totalPaid'] = round(payment_data['totalPaid'], 2) + payment_data['pendingShares'] = round(payment_data['pendingShares'], 2) + payment_data['pendingBalance'] = round(payment_data['pendingBalance'], 2) + try: payment_data['lastPayment'] = mining_data['lastPayment'][:-17] payment_data['lastPaymentLink'] = mining_data['lastPaymentLink'] @@ -248,6 +252,7 @@ def update_miner_data(self, timenow): performance_samples = mining_data.pop('performanceSamples') + payment_data['created_at'] = timenow payment_data['miner'] = miner print(miner, block_data.miner) @@ -274,14 +279,15 @@ def update_miner_data(self, timenow): try: live_performance = mining_data.pop('performance') live_df = worker_to_df(live_performance) + live_df['hashrate'] = round(live_df['hashrate'], 0) live_df['miner'] = miner if last_block_found == 'N/A': live_df['effort'] = 0 else: - live_df['effort'] = [self.calculate_mining_effort(networkDifficulty, networkHashrate, - temp_hash, latest) for temp_hash in live_df.hashrate] - live_df['ttf'] = [self.calculate_time_to_find_block(networkDifficulty, networkHashrate, - temp_hash) for temp_hash in live_df.hashrate] + live_df['effort'] = [round(self.calculate_mining_effort(networkDifficulty, networkHashrate, + temp_hash, latest), 2) for temp_hash in live_df.hashrate] + live_df['ttf'] = [round(self.calculate_time_to_find_block(networkDifficulty, networkHashrate, + temp_hash), 2) for temp_hash in live_df.hashrate] live_df['last_block_found'] = last_block_found self.insert_df_rows(live_df, 'live_worker') @@ -289,6 +295,8 @@ def update_miner_data(self, timenow): except KeyError: live_df = pd.DataFrame() print('no live data for miner {}'.format(miner)) + + self.db.insert_data('payment', payment_data) From bb04d96a7ceaba13f39cf167fa8d77780be5c297 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Tue, 30 Apr 2024 09:41:17 -0600 Subject: [PATCH 10/16] removed commented out code we dont need --- layouts/front_page.py | 4 ---- layouts/mining_page.py | 6 ------ 2 files changed, 10 deletions(-) diff --git a/layouts/front_page.py b/layouts/front_page.py index 01cbfa57..96739011 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -1,7 +1,6 @@ import dash from dash import html, dcc, Input, Output, dash_table import dash_bootstrap_components as dbc -from utils.api_reader import SigmaWalletReader, PriceReader from pandas import DataFrame from utils.dash_utils import metric_row_style, image_style, create_row_card, card_style, image_card_style, bottom_row_style, bottom_image_style, card_color, large_text_color, small_text_color, background_color import plotly.graph_objs as go @@ -10,9 +9,6 @@ db_sync = DataSyncer(config_path="../conf") - -price_reader = PriceReader() - debug = False button_color = large_text_color diff --git a/layouts/mining_page.py b/layouts/mining_page.py index 125e3c7e..c7568b1c 100644 --- a/layouts/mining_page.py +++ b/layouts/mining_page.py @@ -1,4 +1,3 @@ -from utils.api_reader import SigmaWalletReader, PriceReader from utils.dash_utils import image_style, create_pie_chart, create_bar_chart, create_table_component, create_row_card, create_image_text_block, card_style, image_card_style, bottom_row_style, card_color, background_color, large_text_color, small_text_color, bottom_image_style, top_row_style, table_style from dash import Dash, html, dash_table, dcc, callback_context from dash.exceptions import PreventUpdate @@ -25,8 +24,6 @@ button_color = large_text_color Session(server) -price_reader = PriceReader() -# sigma_reader = SigmaWalletReader(config_path="../conf") color_discrete_map = { 'Rolling Effort': 'black', @@ -109,8 +106,6 @@ def update_middle(n, pathname): payment = db_sync.db.fetch_data('payment') my_payment = payment[payment.miner == wallet] - # my_payment = reader.get_miner_payment_stats(wallet) - payment_images ={ 'pendingshares': 'min-payout.png', 'pendingbalance': 'triangle.png', @@ -223,7 +218,6 @@ def update_table(n_intervals, table, pathname): columns = [{"name": i, "id": i} for i in df.columns] data = df.to_dict('records') - # print(first, second) return data, title_2 From aae11a24dbe77e79c031273312dbda7dc8b367d4 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Wed, 1 May 2024 10:46:38 -0600 Subject: [PATCH 11/16] containerization of db and ui integration --- Dockerfile => Dockerfile.UI | 0 Dockerfile.cron | 26 + docker-compose-old.yaml | 8 + docker-compose.yaml | 36 +- layouts/front_page.py | 14 + layouts/mining_page.py | 14 +- price_data.csv | 2 + requirements.txt | 3 +- testing_2_db.ipynb | 1317 +---------------------- utils/__init__.py | 0 utils/api_2_db.py | 141 +-- utils/crontab_updates | 10 + utils/db_util.py | 4 + utils/init_db.py | 17 + utils/update_blocks_and_workers.py | 16 + utils/update_payment_and_performance.py | 12 + utils/update_pool_stats.py | 12 + 17 files changed, 283 insertions(+), 1349 deletions(-) rename Dockerfile => Dockerfile.UI (100%) create mode 100644 Dockerfile.cron create mode 100644 docker-compose-old.yaml create mode 100644 price_data.csv create mode 100644 utils/__init__.py create mode 100644 utils/crontab_updates create mode 100644 utils/init_db.py create mode 100644 utils/update_blocks_and_workers.py create mode 100644 utils/update_payment_and_performance.py create mode 100644 utils/update_pool_stats.py diff --git a/Dockerfile b/Dockerfile.UI similarity index 100% rename from Dockerfile rename to Dockerfile.UI diff --git a/Dockerfile.cron b/Dockerfile.cron new file mode 100644 index 00000000..335145a1 --- /dev/null +++ b/Dockerfile.cron @@ -0,0 +1,26 @@ +FROM python:3.9 +WORKDIR /app + +# Install Python dependencies +COPY requirements.txt . +RUN pip install --no-cache-dir -r requirements.txt + +# Set the working directory in the container +WORKDIR /app + +# Copy the current directory contents into the container at /usr/src/app +COPY . /app + +# Install cron +RUN apt-get update && apt-get -y install cron + +# Copy the crontab file from the utils directory and set it up +COPY utils/crontab_updates /etc/cron.d/crontab_updates +RUN chmod 0644 /etc/cron.d/crontab_updates +RUN crontab /etc/cron.d/crontab_updates +RUN touch /var/log/cron.log + +# Start cron and tail the log file to keep the container running +CMD cron && tail -f /var/log/cron.log +CMD ['ls'] +CMD ["python3", "-m", "utils.init_db"] \ No newline at end of file diff --git a/docker-compose-old.yaml b/docker-compose-old.yaml new file mode 100644 index 00000000..925c5df1 --- /dev/null +++ b/docker-compose-old.yaml @@ -0,0 +1,8 @@ +version: '3' +services: + pool-ui: + build: + context: . + image: ghcr.io/marctheshark3/sigmanaut-mining-pool-ui:main + ports: + - "8050:8050" diff --git a/docker-compose.yaml b/docker-compose.yaml index 925c5df1..c94d981c 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,8 +1,38 @@ -version: '3' +version: '3.8' + services: - pool-ui: + db: + image: postgres:latest + environment: + POSTGRES_DB: mining-db + POSTGRES_USER: marctheshark + POSTGRES_PASSWORD: password + volumes: + - mining_data:/var/lib/postgresql/data + restart: unless-stopped + ports: + - "5432:5432" + + cronjob: + build: + context: . + dockerfile: Dockerfile.cron + volumes: + - ./:/app + restart: unless-stopped + depends_on: + - db + + web: build: context: . - image: ghcr.io/marctheshark3/sigmanaut-mining-pool-ui:main + dockerfile: Dockerfile.UI ports: - "8050:8050" + restart: unless-stopped + depends_on: + - cronjob + - db + +volumes: + mining_data: diff --git a/layouts/front_page.py b/layouts/front_page.py index 96739011..7cfa3586 100644 --- a/layouts/front_page.py +++ b/layouts/front_page.py @@ -249,6 +249,7 @@ def update_content(n, selected_data): def get_layout(reader): return html.Div([dbc.Container(fluid=True, style={'backgroundColor': background_color, 'padding': '10px', 'justifyContent': 'center', 'fontFamily': 'sans-serif', 'color': '#FFFFFF', 'maxWidth': '960px' }, children=[ + dcc.Interval(id='fp-int-1', interval=60*1000, n_intervals=0), dcc.Interval(id='fp-int-2', interval=60*1000, n_intervals=0), dcc.Interval(id='fp-int-3', interval=60*1000, n_intervals=0), @@ -260,10 +261,21 @@ def get_layout(reader): # Detailed stats dbc.Row(id='metric-2', justify='center', style={'padding': '5px'}), + dbc.Row(justify='center', children=[ + html.Img(src='https://i.imgur.com/M84CKef.jpg', style={'height': 'auto%', 'width': 'auto'}), + html.Img(src='https://i.imgur.com/XvPvUgp.jpg', style={'height': 'auto%', 'width': 'auto'}), + html.Img(src='https://i.imgur.com/l0xluPE.jpg', style={'height': 'auto%', 'width': 'auto'}), + + html.Img(src='https://i.imgur.com/Sf6XAJv.jpg', style={'height': 'auto%', 'width': 'auto'}), + + + ]), + # Mining Address Input dbc.Row(justify='center', children=[ dbc.Col(md=8, children=[ + dcc.Input(id='mining-address-input', type='text', placeholder='Mining Address', style={ 'width': '100%', 'padding': '10px', @@ -274,7 +286,9 @@ def get_layout(reader): ]), # Start Mining Button + dbc.Row(justify='center', children=[ + html.Button('Start Mining ⛏️', id='start-mining-button', style={ 'marginTop': '20px', 'backgroundColor': button_color, diff --git a/layouts/mining_page.py b/layouts/mining_page.py index c7568b1c..cb94a464 100644 --- a/layouts/mining_page.py +++ b/layouts/mining_page.py @@ -48,7 +48,15 @@ def update_front_row(n, pathname): worker_df = db_sync.db.fetch_data('live_worker') total_df = worker_df[worker_df.worker == 'totals'] - my_worker_df = total_df[total_df.miner == miner] + try: + + my_worker_df = total_df[total_df.miner == miner] + except ValueError: + db_sync.update_miner_data(payment=False, live_data=True, performance=False) + worker_df = db_sync.db.fetch_data('live_worker') + total_df = worker_df[worker_df.worker == 'totals'] + my_worker_df = total_df[total_df.miner == miner] + my_total_hash = my_worker_df.hashrate.item() my_effort = my_worker_df.effort.item() my_ttf = my_worker_df.ttf.item() @@ -104,6 +112,7 @@ def update_middle(n, pathname): ### PAYMENT STATS ### payment = db_sync.db.fetch_data('payment') + payment = payment[payment.created_at == max(payment.created_at)] my_payment = payment[payment.miner == wallet] payment_images ={ @@ -127,10 +136,11 @@ def update_middle(n, pathname): [State('url', 'pathname')]) def update_outside(n, pathname): - miner = unquote(pathname.lstrip('/')) + miner = unquote(pathname.lstrip('/')) ### PAYMENT STATS ### payment = db_sync.db.fetch_data('payment') + payment = payment[payment.created_at == max(payment.created_at)] total = payment.pendingshares.sum() payment['participation'] = [round(shares / total * 100, 2) for shares in payment.pendingshares] my_payment = payment[payment.miner == miner] diff --git a/price_data.csv b/price_data.csv new file mode 100644 index 00000000..c0c26e9e --- /dev/null +++ b/price_data.csv @@ -0,0 +1,2 @@ +,ergo,rosen-bridge,spectrum-finance +usd,1.26,0.081699,0.02817572 diff --git a/requirements.txt b/requirements.txt index dc800c14..db91a12a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,4 +11,5 @@ requests flask-session dash-auth locust -cachelib \ No newline at end of file +cachelib +psycopg2-binary \ No newline at end of file diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index faf0eb7c..a3213f19 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -16,7 +16,16 @@ "execution_count": 2, "id": "11604c9d-4ef6-48da-939f-fac113478414", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Connection failed: could not translate host name \"db\" to address: Temporary failure in name resolution\n", + "\n" + ] + } + ], "source": [ "db_sync = DataSyncer(config_path=\"../conf\")\n", "miner = '9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'" @@ -28,17 +37,6 @@ "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Batch 1/1: Deleted up to 10 rows from stats\n", - "Batch 1/1: Deleted up to 10000 rows from block\n", - "Batch 1/1: Deleted up to 10000 rows from payment\n", - "Batch 1/1: Deleted up to 10000 rows from live_worker\n", - "Batch 1/1: Deleted up to 10000 rows from performance\n" - ] - }, { "data": { "text/plain": [ @@ -51,7 +49,7 @@ } ], "source": [ - "db_sync.__delete_table__()\n", + "# db_sync.__delete_table__()\n", "db_sync.__create_table__()" ] }, @@ -74,11 +72,10 @@ }, "outputs": [ { - "name": "stderr", + "name": "stdout", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" + "UPDATED BLOCK TABLE SUCCESFULLY\n" ] }, { @@ -102,270 +99,17 @@ " \n", " \n", " \n", - " poolid\n", - " blockheight\n", - " networkdifficulty\n", - " status\n", - " confirmationprogress\n", - " effort\n", - " transactionconfirmationdata\n", - " reward\n", - " infolink\n", - " hash\n", - " miner\n", - " source\n", - " time_found\n", " \n", " \n", " \n", - " \n", - " 0\n", - " ErgoSigmanauts\n", - " 1254265\n", - " 386513.23\n", - " pending\n", - " 82\n", - " 3.16\n", - " 501090b5ff36737c\n", - " 27.02\n", - " https://explorer.ergoplatform.com/en/blocks/0e...\n", - " 0e48a40b9cdffafc5448cf5c0255a5baa96cd88292bf2a...\n", - " 9h6...YYYAb\n", - " ErgoSigmanauts\n", - " 2024-04-30 12:52:07\n", - " \n", - " \n", - " 1\n", - " ErgoSigmanauts\n", - " 1253410\n", - " 354831.66\n", - " confirmed\n", - " 100\n", - " 1.05\n", - " 580c001f31e4fd3a\n", - " 27.00\n", - " https://explorer.ergoplatform.com/en/blocks/7a...\n", - " 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36...\n", - " 9i8...SKz8K\n", - " ErgoSigmanauts\n", - " 2024-04-29 08:20:04\n", - " \n", - " \n", - " 2\n", - " ErgoSigmanauts\n", - " 1253118\n", - " 362089.48\n", - " confirmed\n", - " 100\n", - " 0.65\n", - " 50239669e1ac4af8\n", - " 27.00\n", - " https://explorer.ergoplatform.com/en/blocks/44...\n", - " 44167cd62e4406f726826b15a0fcf6e843fade6c445102...\n", - " 9i3...ZGLDL\n", - " ErgoSigmanauts\n", - " 2024-04-28 23:18:22\n", - " \n", - " \n", - " 3\n", - " ErgoSigmanauts\n", - " 1252956\n", - " 390351.08\n", - " confirmed\n", - " 100\n", - " 0.11\n", - " 57f9f469dba977c3\n", - " 27.01\n", - " https://explorer.ergoplatform.com/en/blocks/d0...\n", - " d009bdd64433367b30dcf2493ccfa43329d2383ca288b0...\n", - " 9fx...n2ewV\n", - " ErgoSigmanauts\n", - " 2024-04-28 17:16:48\n", - " \n", - " \n", - " 4\n", - " ErgoSigmanauts\n", - " 1252929\n", - " 390351.08\n", - " confirmed\n", - " 100\n", - " 0.31\n", - " 5016a01340d6b9ba\n", - " 27.65\n", - " https://explorer.ergoplatform.com/en/blocks/88...\n", - " 881144c4c46b08e39d59817863da508be56c215eafb8eb...\n", - " 9fR...LUuxo\n", - " ErgoSigmanauts\n", - " 2024-04-28 16:09:49\n", - " \n", - " \n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " ...\n", - " \n", - " \n", - " 56\n", - " ErgoSigmanauts\n", - " 1230749\n", - " 360986.50\n", - " confirmed\n", - " 100\n", - " 0.29\n", - " d8a48cee009b608c\n", - " 30.01\n", - " https://explorer.ergoplatform.com/en/blocks/2e...\n", - " 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873...\n", - " 9gw...Xhqys\n", - " ErgoSigmanauts\n", - " 2024-03-28 15:40:37\n", - " \n", - " \n", - " 57\n", - " ErgoSigmanauts\n", - " 1230547\n", - " 434381.38\n", - " confirmed\n", - " 100\n", - " 0.80\n", - " d6c1191549ab2f07\n", - " 30.03\n", - " https://explorer.ergoplatform.com/en/blocks/c5...\n", - " c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2...\n", - " 9fY...4HpcP\n", - " ErgoSigmanauts\n", - " 2024-03-28 08:26:49\n", - " \n", - " \n", - " 58\n", - " ErgoSigmanauts\n", - " 1230104\n", - " 347635.80\n", - " confirmed\n", - " 100\n", - " 4.75\n", - " d153e8105c7c0b57\n", - " 30.00\n", - " https://explorer.ergoplatform.com/en/blocks/b0...\n", - " b03937a8404d47fed3d7050a93a6e6b940100e4c008a66...\n", - " 9fY...4HpcP\n", - " ErgoSigmanauts\n", - " 2024-03-27 18:07:25\n", - " \n", - " \n", - " 59\n", - " ErgoSigmanauts\n", - " 1223980\n", - " 416310.69\n", - " confirmed\n", - " 100\n", - " 0.90\n", - " 300b000932aead3a\n", - " 30.01\n", - " https://explorer.ergoplatform.com/en/blocks/83...\n", - " 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa...\n", - " 9i8...SKz8K\n", - " ErgoSigmanauts\n", - " 2024-03-19 04:19:20\n", - " \n", - " \n", - " 60\n", - " ErgoSigmanauts\n", - " 1221911\n", - " 421209.62\n", - " confirmed\n", - " 100\n", - " 2.87\n", - " 705c89a6a4e552cf\n", - " 30.01\n", - " https://explorer.ergoplatform.com/en/blocks/47...\n", - " 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e...\n", - " 9iQ...bL3fJ\n", - " ErgoSigmanauts\n", - " 2024-03-16 06:45:27\n", - " \n", " \n", "\n", - "

61 rows × 13 columns

\n", "" ], "text/plain": [ - " poolid blockheight networkdifficulty status \\\n", - "0 ErgoSigmanauts 1254265 386513.23 pending \n", - "1 ErgoSigmanauts 1253410 354831.66 confirmed \n", - "2 ErgoSigmanauts 1253118 362089.48 confirmed \n", - "3 ErgoSigmanauts 1252956 390351.08 confirmed \n", - "4 ErgoSigmanauts 1252929 390351.08 confirmed \n", - ".. ... ... ... ... \n", - "56 ErgoSigmanauts 1230749 360986.50 confirmed \n", - "57 ErgoSigmanauts 1230547 434381.38 confirmed \n", - "58 ErgoSigmanauts 1230104 347635.80 confirmed \n", - "59 ErgoSigmanauts 1223980 416310.69 confirmed \n", - "60 ErgoSigmanauts 1221911 421209.62 confirmed \n", - "\n", - " confirmationprogress effort transactionconfirmationdata reward \\\n", - "0 82 3.16 501090b5ff36737c 27.02 \n", - "1 100 1.05 580c001f31e4fd3a 27.00 \n", - "2 100 0.65 50239669e1ac4af8 27.00 \n", - "3 100 0.11 57f9f469dba977c3 27.01 \n", - "4 100 0.31 5016a01340d6b9ba 27.65 \n", - ".. ... ... ... ... \n", - "56 100 0.29 d8a48cee009b608c 30.01 \n", - "57 100 0.80 d6c1191549ab2f07 30.03 \n", - "58 100 4.75 d153e8105c7c0b57 30.00 \n", - "59 100 0.90 300b000932aead3a 30.01 \n", - "60 100 2.87 705c89a6a4e552cf 30.01 \n", - "\n", - " infolink \\\n", - "0 https://explorer.ergoplatform.com/en/blocks/0e... \n", - "1 https://explorer.ergoplatform.com/en/blocks/7a... \n", - "2 https://explorer.ergoplatform.com/en/blocks/44... \n", - "3 https://explorer.ergoplatform.com/en/blocks/d0... \n", - "4 https://explorer.ergoplatform.com/en/blocks/88... \n", - ".. ... \n", - "56 https://explorer.ergoplatform.com/en/blocks/2e... \n", - "57 https://explorer.ergoplatform.com/en/blocks/c5... \n", - "58 https://explorer.ergoplatform.com/en/blocks/b0... \n", - "59 https://explorer.ergoplatform.com/en/blocks/83... \n", - "60 https://explorer.ergoplatform.com/en/blocks/47... \n", - "\n", - " hash miner \\\n", - "0 0e48a40b9cdffafc5448cf5c0255a5baa96cd88292bf2a... 9h6...YYYAb \n", - "1 7a3bf34be6481b99c1f3f4aa9364c4b48a287d45156f36... 9i8...SKz8K \n", - "2 44167cd62e4406f726826b15a0fcf6e843fade6c445102... 9i3...ZGLDL \n", - "3 d009bdd64433367b30dcf2493ccfa43329d2383ca288b0... 9fx...n2ewV \n", - "4 881144c4c46b08e39d59817863da508be56c215eafb8eb... 9fR...LUuxo \n", - ".. ... ... \n", - "56 2e2b04e088834393eafa5aac17d0fc641f4a188d6dc873... 9gw...Xhqys \n", - "57 c5886b3606b842b4a0ecaeda2d6270ac3238e7e0da37d2... 9fY...4HpcP \n", - "58 b03937a8404d47fed3d7050a93a6e6b940100e4c008a66... 9fY...4HpcP \n", - "59 83c740633d4aa9e61775dcab0d2ef20dd4d11c275424fa... 9i8...SKz8K \n", - "60 47dd2792f0fd255fc8fc4b0a12903b351245fb7083ea5e... 9iQ...bL3fJ \n", - "\n", - " source time_found \n", - "0 ErgoSigmanauts 2024-04-30 12:52:07 \n", - "1 ErgoSigmanauts 2024-04-29 08:20:04 \n", - "2 ErgoSigmanauts 2024-04-28 23:18:22 \n", - "3 ErgoSigmanauts 2024-04-28 17:16:48 \n", - "4 ErgoSigmanauts 2024-04-28 16:09:49 \n", - ".. ... ... \n", - "56 ErgoSigmanauts 2024-03-28 15:40:37 \n", - "57 ErgoSigmanauts 2024-03-28 08:26:49 \n", - "58 ErgoSigmanauts 2024-03-27 18:07:25 \n", - "59 ErgoSigmanauts 2024-03-19 04:19:20 \n", - "60 ErgoSigmanauts 2024-03-16 06:45:27 \n", - "\n", - "[61 rows x 13 columns]" + "Empty DataFrame\n", + "Columns: []\n", + "Index: []" ] }, "execution_count": 5, @@ -385,11 +129,10 @@ "metadata": {}, "outputs": [ { - "name": "stderr", + "name": "stdout", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" + "UPDATED STATS TABLE SUCCESFULLY\n" ] }, { @@ -413,76 +156,17 @@ " \n", " \n", " \n", - " fee\n", - " paid\n", - " blocks\n", - " last_block_found\n", - " enabled\n", - " minimumpayment\n", - " payoutscheme\n", - " connectedminers\n", - " poolhashrate\n", - " sharespersecond\n", - " ...\n", - " networkhashrate\n", - " networkdifficulty\n", - " lastnetworkblocktime\n", - " blockheight\n", - " connectedpeers\n", - " rewardtype\n", - " pooleffort\n", - " poolttf\n", - " price\n", - " insert_time_stamp\n", " \n", " \n", " \n", - " \n", - " 0\n", - " 0.9\n", - " 1637.626309\n", - " 61\n", - " 2024-04-30 12:52:07\n", - " True\n", - " 0.5\n", - " PPLNS\n", - " 40\n", - " 56.66\n", - " 4.0\n", - " ...\n", - " 13.376246\n", - " 1.60515\n", - " 2024-04-30 15:37:36.958542\n", - " 1254331\n", - " 109\n", - " POW\n", - " 35.2\n", - " 0.33\n", - " 1.29\n", - " 2024-04-30 09:38:19.382095\n", - " \n", " \n", "\n", - "

1 rows × 21 columns

\n", "" ], "text/plain": [ - " fee paid blocks last_block_found enabled minimumpayment \\\n", - "0 0.9 1637.626309 61 2024-04-30 12:52:07 True 0.5 \n", - "\n", - " payoutscheme connectedminers poolhashrate sharespersecond ... \\\n", - "0 PPLNS 40 56.66 4.0 ... \n", - "\n", - " networkhashrate networkdifficulty lastnetworkblocktime blockheight \\\n", - "0 13.376246 1.60515 2024-04-30 15:37:36.958542 1254331 \n", - "\n", - " connectedpeers rewardtype pooleffort poolttf price \\\n", - "0 109 POW 35.2 0.33 1.29 \n", - "\n", - " insert_time_stamp \n", - "0 2024-04-30 09:38:19.382095 \n", - "\n", - "[1 rows x 21 columns]" + "Empty DataFrame\n", + "Columns: []\n", + "Index: []" ] }, "execution_count": 6, @@ -498,78 +182,6 @@ { "cell_type": "code", "execution_count": 7, - "id": "e1de965a-d3e3-4e54-b7ab-a2c1e8f844da", - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/plain": [ - "0.9" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "data = db_sync.db.fetch_data('stats')\n", - "data = data[data.insert_time_stamp == max(data.insert_time_stamp)]\n", - "data['fee'].item()" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "id": "cd8c2c61-4ba2-4740-9f3f-667c501d365e", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'fee': 0.9,\n", - " 'paid': 1637.626309487606,\n", - " 'blocks': 61,\n", - " 'last_block_found': '2024-04-30 12:52:07',\n", - " 'enabled': True,\n", - " 'minimumPayment': 0.5,\n", - " 'payoutScheme': 'PPLNS',\n", - " 'connectedMiners': 40,\n", - " 'poolHashrate': 56.66,\n", - " 'sharesPerSecond': 4,\n", - " 'networkType': 'mainnet',\n", - " 'networkHashrate': 13.3762461466624,\n", - " 'networkDifficulty': 1.605149537599488,\n", - " 'lastNetworkBlockTime': '2024-04-30T15:37:36.9585415Z',\n", - " 'blockHeight': 1254331,\n", - " 'connectedPeers': 109,\n", - " 'rewardType': 'POW',\n", - " 'insert_time_stamp': Timestamp('2024-04-30 09:38:19.382095'),\n", - " 'poolEffort': 35.2,\n", - " 'poolTTF': 0.33,\n", - " 'price': 1.29}" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "db_sync.data" - ] - }, - { - "cell_type": "code", - "execution_count": 9, "id": "2ceade65-613b-413e-9c46-df3e12e15911", "metadata": { "scrolled": true @@ -579,920 +191,71 @@ "name": "stdout", "output_type": "stream", "text": [ - "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", - " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", - " 'sharespersecond', 'networktype', 'networkhashrate',\n", - " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", - " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", - " 'insert_time_stamp'],\n", - " dtype='object')\n", - "9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2TuYsAik 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9h6bjuzth7XDNeBxwFjpYSfmUkfBiepE8MGJcvmsVkeCtGYYYAb 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gXo8m2VyHvQ3FGvCg1GNWfyM5uX27BEKNCXDjQ6GiFsMJw5Yto 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9i3P4Ah9jp7nnSNMg6gxjXXHEWjkkBbPJR5RLRkMwEt3DZZGLDL 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fHLdYBz5fPdDfMkGMfAsuj6EfXCpmM4GkamT23xeT3hzdHbNJx 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fyDqkVk3iDXPNcquyLBehEtiZiqdKb27PnugemJEpGYbTJM7tN 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsmeFsakQ 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "no live data for miner 9eZVqXVnrVWQKK19b7E7kp4ZyNqanp2z1mpKUJRaouNsmeFsakQ\n", - "9fRQ8iCiCZekAewtjHmu7AmucWjvBTNUMeBFtnNkpfyWsNLUuxo 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9hUWH7MTuDSPxSQiQuUecLf6SnCCN8ydt8XigBD3TN42zddSGtj 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fLYPigGHXkTyyQvU9zzoT3RTAXJ4dfHjbkg6ik2fHKKxjprSrh 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9hSk13XDU8keWAp3KxKSgUVCkfDcw577jAjM6SgbRpuYeL8ygPH 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gLMeVQbDWX522WUzBwmVnr2Avqki7wdz7c9MpcpkgVJE5DUhcN 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9exkqG2KBpdeHKby84pSehSZt9sKQitAqjuguHXdd25eEJWFksx 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9hxPoaiJfm4yTisDX1ctC4Kd7PANdNE2EiJa5EhLMJk4BQLLUaV 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gwk97nY8Uc6kLcSYs4ueWttY5EKyfsrbiyVQWFdUaWvd4Xhqys 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fjQi1JrgFZ9QBKGbE7EYDwUwAvGUk95Wa92kV2D4EnggNcnMzN 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fy4KkHt9Xavq9R7Wq16euW4JjH1mYwBtV7SNNtAtwnQ6qSZL4w 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9ggrhWJVjTHHUrK8qJThWi1yBscmETnT3nxTwVDfQQPCASaZmxt 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fxwXaXp7x3i8gzfZ5zqMJJK1DbtyUeVGQL3mBaCg2cB8yn2ewV 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9i8wsL9HYe4wRtuxXtnvki31uGJd6avKoQ79BXbz2sHWNZSKz8K 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9g7vDJUyWWDYkh6me5zZPyfoLdTweVfEdX2JbVnmZc3yEA9uUJN 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9f7851wUuymT3jiaaFQ5Uv3QUmCHsahCR43syFbc1nDRSHMxEbM 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9eYXGx2AzwzbgThF7sU2JKspqUbhr5nMgnVNokNSWx7SFYYbvvV 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9ggYKoC58jQkbGNhCKqcLMsuK3qCE5ieqTPx28KrY5jJ5SemSuT 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9iJkieXSookLtaYr8JZ8A8nKuev9dzRMwxkGjuyQebnQgCj8zdC 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9f5vwtxyRP87wmc8ezyKbL7ryaNhDrgWUVBEZpQKnw16SWceKR9 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9hYeUWUG2dAM6sZb9vr5qgF1gACEGQPLN9cbXjxERmJS89Tbadc 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9f1gJS9FhVsBZPZZ4goGsKKqj5EzniSVYpH9WcEi1jxa2Yon1dQ 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gLRSzqiMGdMU39jG6hMAnwHT748HiTrY6wz1jjFGkJYaMPRHTP 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9eiBDqvLs2Z5PobwMmHtZsczn7a4yy73mYsKghkqgCZ5NfWd5MK 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "no live data for miner 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J\n", - "9eZPTmn8zp5GJ7KZwTo8cEuxNdezWaY3hBbLeWid7EAZedzb9tD 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "no live data for miner 9enXTiL3i9CKWKCcE3fby2hSaeoWEWV28evc1j1SK9yKRDy9cVN\n", - "9gqJXY1t7mUn7rurrcbdY1td226N1TwzDHRZ1xXeUiUERZ58uHE 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9iGCyowxwgf6cQef1RfEw6UCYoHJi6q1hZvKvcWyFY1kuLNVE7S 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "no live data for miner 9gcwns63b8GJkZtu2j655xQRtAdYjy6SKdjNkMNRjYj7Git9HxP\n", - "9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEuhcvT1 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n", - "9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJUip8z 0 9h6...YYYAb\n", - "1 9i8...SKz8K\n", - "2 9i3...ZGLDL\n", - "3 9fx...n2ewV\n", - "4 9fR...LUuxo\n", - " ... \n", - "56 9gw...Xhqys\n", - "57 9fY...4HpcP\n", - "58 9fY...4HpcP\n", - "59 9i8...SKz8K\n", - "60 9iQ...bL3fJ\n", - "Name: miner, Length: 61, dtype: object\n" - ] - } - ], - "source": [ - "db_sync.update_miner_data(timenow)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "id": "dc05f4bd-a2b9-4fb2-a57b-95f8ac26d9fe", - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:176: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" + "RangeIndex(start=0, stop=0, step=1)\n" ] }, { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
workerhashrateshares_per_secondcreatedminereffortttflast_block_found
0Rig-011835.00.072024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...67.6410.122024-04-23 19:17:03
1Rig-022598.00.072024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...95.777.152024-04-23 19:17:03
2Rig_031590.00.082024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...58.6111.682024-04-23 19:17:03
3totals6023.00.222024-04-30 15:36:349f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...222.013.082024-04-23 19:17:03
4GRAYSPEAK2488.00.072024-04-30 15:36:349ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV...120.437.472024-04-21 15:49:03
...........................
110totals161.00.042024-04-30 15:38:349iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z...39.32115.392024-03-16 06:45:27
111waga115.00.032024-04-30 15:38:349gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...0.00161.55N/A
112totals115.00.032024-04-30 15:38:349gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu...0.00161.55N/A
113aliens6928.00.012024-04-30 15:38:349gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...0.00663.50N/A
114totals28.00.012024-04-30 15:38:349gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...0.00663.50N/A
\n", - "

115 rows × 8 columns

\n", - "
" - ], - "text/plain": [ - " worker hashrate shares_per_second created \\\n", - "0 Rig-01 1835.0 0.07 2024-04-30 15:36:34 \n", - "1 Rig-02 2598.0 0.07 2024-04-30 15:36:34 \n", - "2 Rig_03 1590.0 0.08 2024-04-30 15:36:34 \n", - "3 totals 6023.0 0.22 2024-04-30 15:36:34 \n", - "4 GRAYSPEAK 2488.0 0.07 2024-04-30 15:36:34 \n", - ".. ... ... ... ... \n", - "110 totals 161.0 0.04 2024-04-30 15:38:34 \n", - "111 waga 115.0 0.03 2024-04-30 15:38:34 \n", - "112 totals 115.0 0.03 2024-04-30 15:38:34 \n", - "113 aliens69 28.0 0.01 2024-04-30 15:38:34 \n", - "114 totals 28.0 0.01 2024-04-30 15:38:34 \n", - "\n", - " miner effort ttf \\\n", - "0 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 67.64 10.12 \n", - "1 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 95.77 7.15 \n", - "2 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 58.61 11.68 \n", - "3 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... 222.01 3.08 \n", - "4 9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPV... 120.43 7.47 \n", - ".. ... ... ... \n", - "110 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7Z... 39.32 115.39 \n", - "111 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 0.00 161.55 \n", - "112 9gWtU5oRt4yuNU4WELRAHm49CCpwtRoVRkjs1DQkoKZmEu... 0.00 161.55 \n", - "113 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... 0.00 663.50 \n", - "114 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... 0.00 663.50 \n", - "\n", - " last_block_found \n", - "0 2024-04-23 19:17:03 \n", - "1 2024-04-23 19:17:03 \n", - "2 2024-04-23 19:17:03 \n", - "3 2024-04-23 19:17:03 \n", - "4 2024-04-21 15:49:03 \n", - ".. ... \n", - "110 2024-03-16 06:45:27 \n", - "111 N/A \n", - "112 N/A \n", - "113 N/A \n", - "114 N/A \n", - "\n", - "[115 rows x 8 columns]" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "df = db_sync.db.fetch_data('live_worker')\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "id": "a48184cc-33de-4d81-834d-7861d2dd6e3c", - "metadata": {}, - "outputs": [ - { - "ename": "SyntaxError", - "evalue": "invalid decimal literal (1005857483.py, line 1)", + "ename": "AttributeError", + "evalue": "'DataFrame' object has no attribute 'insert_time_stamp'", "output_type": "error", "traceback": [ - "\u001b[0;36m Cell \u001b[0;32mIn[11], line 1\u001b[0;36m\u001b[0m\n\u001b[0;31m df = db_sync.db.fetch_data('performance')\t9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk\u001b[0m\n\u001b[0m \t^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid decimal literal\n" + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/tmp/ipykernel_4008628/3030957705.py\u001b[0m in \u001b[0;36m?\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdb_sync\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mupdate_miner_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtimenow\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m~/Documents/sigmanaut-mining-pool-ui/utils/api_2_db.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, timenow, payment, live_data, performance)\u001b[0m\n\u001b[1;32m 225\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 226\u001b[0m \u001b[0;31m# time_now = pd.Timestamp.now()\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 227\u001b[0m \u001b[0mstats\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfetch_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'stats'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 228\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstats\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 229\u001b[0;31m \u001b[0mstats\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mstats\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mstats\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minsert_time_stamp\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0mmax\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstats\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minsert_time_stamp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 230\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 231\u001b[0m \u001b[0mblock_data\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfetch_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'block'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 232\u001b[0m \u001b[0mnetworkHashrate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mstats\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'networkhashrate'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# use logic to get the lastest not just the first index\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 6295\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mname\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_accessors\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6296\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_info_axis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_can_hold_identifiers_and_holds_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6297\u001b[0m ):\n\u001b[1;32m 6298\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 6299\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'insert_time_stamp'" ] } ], "source": [ - "df = db_sync.db.fetch_data('performance')\t9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk\n", - "\t14.83\n", - "\t60.52\n", - "\t2024-04-21 15:49:03\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "8ecf033f-d342-4aa2-aecd-27fee6ce4325", - "metadata": {}, - "outputs": [], - "source": [ - "df[df.created == '2024-04-27 05:00:00'].worker" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e86e1e78-c04a-4f1d-b95b-5963bc69e0c5", - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "aggregated_df = df.groupby('created').agg({\n", - " 'hashrate': 'sum', # Sum of hashrate\n", - " 'shares_per_second': 'sum', # Sum of shares_per_second\n", - " 'worker': 'nunique', # Count of unique workers\n", - " 'miner': 'nunique' # Count of unique miners\n", - "}).reset_index()\n", - "aggregated_df['hashrate'] = aggregated_df['hashrate'] / 1000\n", - "aggregated_df" + "db_sync.update_miner_data(timenow)" ] }, { "cell_type": "code", "execution_count": null, - "id": "efd84d1e-1548-4d60-8e7a-d273f2b02293", + "id": "dc05f4bd-a2b9-4fb2-a57b-95f8ac26d9fe", "metadata": {}, "outputs": [], "source": [ - "db_sync.db.get_db_size()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cf513127-bb5c-48e1-aaef-d8ba9336f8b5", - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "payment = db_sync.db.fetch_data('payment')\n", - "total = payment.pendingshares.sum()\n", - "payment['participation'] = [round(shares / total * 100, 2) for shares in payment.pendingshares] \n", - "my_payment = payment[payment.miner == miner]\n", - "my_payment" + "db_sync.db.fetch_data('live_worker')" ] }, { "cell_type": "code", "execution_count": null, - "id": "f7483d65-b94b-4c2a-ac9c-f91db66dc8d0", - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "payment" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1a522ea1-61b5-45af-ad5b-e58076459355", + "id": "5bdddb9d-f954-42b0-a637-98636c813226", "metadata": {}, "outputs": [], "source": [ - "worker_df = db_sync.db.fetch_data('live_worker')\n", - "\n", - "worker_df" + "db_sync.db.fetch_data('payment')" ] }, { "cell_type": "code", "execution_count": null, - "id": "23af04c5-4277-4f74-9b03-ccc7a1cd76b9", + "id": "3f725613-833e-4608-a8d7-15f1c867bb2f", "metadata": {}, "outputs": [], "source": [ - "total_df = worker_df[worker_df.worker == 'totals']\n", - "my_worker_df = total_df[total_df.miner == miner]\n", - "my_worker_df" + "db_sync.db.fetch_data('performance')" ] }, { "cell_type": "code", "execution_count": null, - "id": "34d53fc9-ebae-4aae-a4a5-aba51b7cf93c", + "id": "235c17dc-5367-4a4a-b1bc-a8e84efd9ccf", "metadata": {}, "outputs": [], "source": [ - "my_total_hash = my_worker_df.hashrate.item()\n", - "my_total_hash" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ce8c5380-f23e-481f-9981-11a86112b248", - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "url = '{}/{}/{}'.format(db_sync.base_api, 'miners', miner)\n", - "mining_data = db_sync.get_api_data(url) \n", - "mining_data" + "db_sync.db.get_db_size()" ] }, { "cell_type": "code", "execution_count": null, - "id": "5bdddb9d-f954-42b0-a637-98636c813226", + "id": "3b6d9d33-ca53-411e-8816-4bcbc8aa69d3", "metadata": {}, "outputs": [], "source": [] diff --git a/utils/__init__.py b/utils/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/utils/api_2_db.py b/utils/api_2_db.py index 75492839..f854743b 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -96,7 +96,7 @@ def __init__(self, config_path: str): self.data = {'poolEffort': 0} - self.db = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db') + self.db = PostgreSQLDatabase('marctheshark', 'password', 'db', 5432, 'mining-db') self.db.connect() self.db.get_cursor() @@ -187,7 +187,9 @@ def update_pool_stats(self, timenow): del self.data['payoutSchemeConfig'] del self.data['extra'] - self.db.insert_data('stats', self.data) + flag = self.db.insert_data('stats', self.data) + print('UPDATED STATS TABLE SUCCESFULLY') + return flag def update_block_data(self, timenow): ''' @@ -209,7 +211,9 @@ def update_block_data(self, timenow): data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:]) self.db.update_or_insert('block', data) - def update_miner_data(self, timenow): + print('UPDATED BLOCK TABLE SUCCESFULLY') + + def update_miner_data(self, timenow, payment=True, live_data=True, performance=True): self.db.delete_data_in_batches('live_worker') self.db.create_table('live_worker', self.live_worker_headers) @@ -230,77 +234,82 @@ def update_miner_data(self, timenow): for miner in miner_ls: url = '{}/{}/{}'.format(self.base_api, 'miners', miner) mining_data = self.get_api_data(url) + + if payment: + payment_data = {k: v for k, v in mining_data.items() if k not in ['performance', 'performanceSamples']} + payment_data['Schema'] = 'PPLNS' + payment_data['Price'] = erg_price + payment_data['totalPaid'] = round(payment_data['totalPaid'], 2) + payment_data['pendingShares'] = round(payment_data['pendingShares'], 2) + payment_data['pendingBalance'] = round(payment_data['pendingBalance'], 2) + + try: + payment_data['lastPayment'] = mining_data['lastPayment'][:-17] + payment_data['lastPaymentLink'] = mining_data['lastPaymentLink'] + + except KeyError: + payment_data['lastPayment'] = 'N/A' + payment_data['lastPaymentLink'] = 'Keep Mining!' - payment_data = {k: v for k, v in mining_data.items() if k not in ['performance', 'performanceSamples']} - payment_data['Schema'] = 'PPLNS' - payment_data['Price'] = erg_price - payment_data['totalPaid'] = round(payment_data['totalPaid'], 2) - payment_data['pendingShares'] = round(payment_data['pendingShares'], 2) - payment_data['pendingBalance'] = round(payment_data['pendingBalance'], 2) - - try: - payment_data['lastPayment'] = mining_data['lastPayment'][:-17] - payment_data['lastPaymentLink'] = mining_data['lastPaymentLink'] + except TypeError: + payment_data['lastPayment'] = 'N/A' + payment_data['lastPaymentLink'] = 'Keep Mining!' - except KeyError: - payment_data['lastPayment'] = 'N/A' - payment_data['lastPaymentLink'] = 'Keep Mining!' - - except TypeError: - payment_data['lastPayment'] = 'N/A' - payment_data['lastPaymentLink'] = 'Keep Mining!' - - performance_samples = mining_data.pop('performanceSamples') + performance_samples = mining_data.pop('performanceSamples') + + + payment_data['created_at'] = timenow + payment_data['miner'] = miner + self.db.insert_data('payment', payment_data) + + if performance: + shorten_miner = '{}...{}'.format(miner[:3], miner[-5:]) + + miner_blocks = block_data[block_data.miner == shorten_miner] + try: + performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) + performance_df['miner'] = miner + + except ValueError: + # might need to add something here + pass + if miner_blocks.empty: + # still need to adjust to pull from performance table for this miner + latest = min(performance_df.created) + last_block_found = 'N/A' - payment_data['created_at'] = timenow - payment_data['miner'] = miner - print(miner, block_data.miner) - shorten_miner = '{}...{}'.format(miner[:3], miner[-5:]) - - miner_blocks = block_data[block_data.miner == shorten_miner] - try: - performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) - performance_df['miner'] = miner - - except ValueError: - # might need to add something here - pass - - if miner_blocks.empty: - # still need to adjust to pull from performance table for this miner - latest = min(performance_df.created) - last_block_found = 'N/A' - - else: - latest = str(max(miner_blocks.time_found)) - last_block_found = latest - - try: - live_performance = mining_data.pop('performance') - live_df = worker_to_df(live_performance) - live_df['hashrate'] = round(live_df['hashrate'], 0) - live_df['miner'] = miner - if last_block_found == 'N/A': - live_df['effort'] = 0 else: - live_df['effort'] = [round(self.calculate_mining_effort(networkDifficulty, networkHashrate, - temp_hash, latest), 2) for temp_hash in live_df.hashrate] - live_df['ttf'] = [round(self.calculate_time_to_find_block(networkDifficulty, networkHashrate, - temp_hash), 2) for temp_hash in live_df.hashrate] - live_df['last_block_found'] = last_block_found - - self.insert_df_rows(live_df, 'live_worker') + latest = str(max(miner_blocks.time_found)) + last_block_found = latest + + self.insert_df_rows(performance_df, 'performance') + + if live_data: + + try: + live_performance = mining_data.pop('performance') + live_df = worker_to_df(live_performance) + live_df['hashrate'] = round(live_df['hashrate'], 0) + live_df['miner'] = miner + if last_block_found == 'N/A': + live_df['effort'] = 0 + else: + live_df['effort'] = [round(self.calculate_mining_effort(networkDifficulty, networkHashrate, + temp_hash, latest), 2) for temp_hash in live_df.hashrate] + live_df['ttf'] = [round(self.calculate_time_to_find_block(networkDifficulty, networkHashrate, + temp_hash), 2) for temp_hash in live_df.hashrate] + live_df['last_block_found'] = last_block_found - except KeyError: - live_df = pd.DataFrame() - print('no live data for miner {}'.format(miner)) + self.insert_df_rows(live_df, 'live_worker') + + except KeyError: + live_df = pd.DataFrame() + print('no live data for miner {}'.format(miner)) + + print('UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY') - - self.db.insert_data('payment', payment_data) - - self.insert_df_rows(performance_df, 'performance') return def calculate_mining_effort(self, network_difficulty, network_hashrate, hashrate, last_block_timestamp): diff --git a/utils/crontab_updates b/utils/crontab_updates new file mode 100644 index 00000000..f95d74a6 --- /dev/null +++ b/utils/crontab_updates @@ -0,0 +1,10 @@ +# Run 'update_blocks_and_workers.py' every minute +*/2 * * * * python3 /utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 + +# Run 'update_payment_and_performance.py' every hour on the hour +*/2 * * * * python3 /utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 + +# Run 'update_pool_stats.py' every minute +*/2 * * * * python3 /utils/update_pool_stats.py >> /var/log/cron.log 2>&1 + +# Don't forget to leave an empty line at the end of the file diff --git a/utils/db_util.py b/utils/db_util.py index 77c61947..576fab25 100644 --- a/utils/db_util.py +++ b/utils/db_util.py @@ -131,6 +131,7 @@ def update_or_insert(self, table_name, data): hash = data['hash'] new_confirmation = data['confirmationProgress'] cursor = self.get_cursor() + flag = False if cursor: try: # First, try to fetch the existing row with the same hash. @@ -144,17 +145,20 @@ def update_or_insert(self, table_name, data): columns = ', '.join([f"{key} = %s" for key in data.keys()]) values = list(data.values()) cursor.execute(f"UPDATE {table_name} SET {columns} WHERE hash = %s", values + [hash]) + flag = True else: # If no existing row, insert new. columns = ', '.join(data.keys()) placeholders = ', '.join(['%s'] * len(data)) cursor.execute(f"INSERT INTO {table_name} ({columns}) VALUES ({placeholders})", list(data.values())) + flag = True self.conn.commit() except psycopg2.OperationalError as e: print(f"Database operation failed: {e}") finally: cursor.close() + return flag diff --git a/utils/init_db.py b/utils/init_db.py new file mode 100644 index 00000000..2d2b2cee --- /dev/null +++ b/utils/init_db.py @@ -0,0 +1,17 @@ +from utils.api_2_db import DataSyncer +from pandas import Timestamp + + +def init_db(): + db_sync = DataSyncer(config_path="../conf") + timenow = Timestamp.now() + db_sync.__create_table__() + db_sync.update_pool_stats(timenow) + db_sync.db.fetch_data('stats') + db_sync.update_block_data(timenow) + db_sync.db.fetch_data('block') + db_sync.update_miner_data(timenow) + + +if __name__ == '__main__': + init_db() \ No newline at end of file diff --git a/utils/update_blocks_and_workers.py b/utils/update_blocks_and_workers.py new file mode 100644 index 00000000..88d5da57 --- /dev/null +++ b/utils/update_blocks_and_workers.py @@ -0,0 +1,16 @@ +from utils.api_2_db import DataSyncer +from pandas import Timestamp + + +def update_blocks_and_live_workers(): + db_sync = DataSyncer(config_path="../conf") + timenow = Timestamp.now() + + # UPDATING BLOCK DATA + flag = db_sync.update_block_data(timenow) + + # UPDATING LIVE DATA + db_sync.update_miner_data(timenow, payment=flag, performance=False) + +if __name__ == '__main__': + update_blocks_and_live_workers() \ No newline at end of file diff --git a/utils/update_payment_and_performance.py b/utils/update_payment_and_performance.py new file mode 100644 index 00000000..8b0c6c1b --- /dev/null +++ b/utils/update_payment_and_performance.py @@ -0,0 +1,12 @@ +from utils.api_2_db import DataSyncer +from pandas import Timestamp + +def update_payment_and_performance(): + db_sync = DataSyncer(config_path="../conf") + timenow = Timestamp.now() + + # UPDATING PAYMENT and PERFORMANCE DATA + db_sync.update_miner_data(timenow, live_data=False) + +if __name__ == '__main__': + update_payment_and_performance() \ No newline at end of file diff --git a/utils/update_pool_stats.py b/utils/update_pool_stats.py new file mode 100644 index 00000000..7b175d36 --- /dev/null +++ b/utils/update_pool_stats.py @@ -0,0 +1,12 @@ +from utils.api_2_db import DataSyncer +from pandas import Timestamp + +def update_pool_stats(): + db_sync = DataSyncer(config_path="../conf") + timenow = Timestamp.now() + + # UPDATING POOL STATS + db_sync.update_pool_stats(timenow) + +if __name__ == '__main__': + update_pool_stats() \ No newline at end of file From f20bb65b35a50732a783cece0be503127425ee5e Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Wed, 1 May 2024 13:12:17 -0600 Subject: [PATCH 12/16] saving progres --- docker-compose.yaml | 2 +- layouts/mining_page.py | 12 ++++++++---- testing_2_db.ipynb | 25 +++++++++++++++++++++++++ utils/api_2_db.py | 40 +++++++++++++++++++++------------------- 4 files changed, 55 insertions(+), 24 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index c94d981c..5268464b 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -11,7 +11,7 @@ services: - mining_data:/var/lib/postgresql/data restart: unless-stopped ports: - - "5432:5432" + - "5431:5432" cronjob: build: diff --git a/layouts/mining_page.py b/layouts/mining_page.py index cb94a464..a96dd732 100644 --- a/layouts/mining_page.py +++ b/layouts/mining_page.py @@ -48,16 +48,20 @@ def update_front_row(n, pathname): worker_df = db_sync.db.fetch_data('live_worker') total_df = worker_df[worker_df.worker == 'totals'] + my_worker_df = total_df[total_df.miner == miner] try: + my_total_hash = my_worker_df.hashrate.item() - my_worker_df = total_df[total_df.miner == miner] + # print(my_worker_df.hashrate, 'TESTESTTEST') except ValueError: - db_sync.update_miner_data(payment=False, live_data=True, performance=False) + timenow = pd.Timestamp.now() + db_sync.update_miner_data(timenow=timenow, payment=False, live_data=True, performance=False) worker_df = db_sync.db.fetch_data('live_worker') total_df = worker_df[worker_df.worker == 'totals'] my_worker_df = total_df[total_df.miner == miner] - - my_total_hash = my_worker_df.hashrate.item() + my_total_hash = my_worker_df.hashrate.item() + # print(my_worker_df.hashrate, 'TESTESTTEST') + # my_total_hash = my_worker_df.hashrate.item() my_effort = my_worker_df.effort.item() my_ttf = my_worker_df.ttf.item() diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index a3213f19..745f8317 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -122,6 +122,31 @@ "db_sync.db.fetch_data('block')" ] }, + { + "cell_type": "code", + "execution_count": 8, + "id": "7e548ecd-b1f4-4c95-bfca-dc55f3932321", + "metadata": {}, + "outputs": [ + { + "ename": "AttributeError", + "evalue": "'DataFrame' object has no attribute 'worker'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m/tmp/ipykernel_4008628/914048340.py\u001b[0m in \u001b[0;36m?\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0mworker_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdb_sync\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfetch_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'live_worker'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mtotal_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mworker_df\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mworker_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mworker\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'totals'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3\u001b[0m \u001b[0mmy_worker_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtotal_df\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mtotal_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mminer\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0mminer\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 6295\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mname\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_accessors\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6296\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_info_axis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_can_hold_identifiers_and_holds_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6297\u001b[0m ):\n\u001b[1;32m 6298\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 6299\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'worker'" + ] + } + ], + "source": [ + "worker_df = db_sync.db.fetch_data('live_worker')\n", + "total_df = worker_df[worker_df.worker == 'totals']\n", + "my_worker_df = total_df[total_df.miner == miner]" + ] + }, { "cell_type": "code", "execution_count": 6, diff --git a/utils/api_2_db.py b/utils/api_2_db.py index f854743b..29b726f1 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -262,26 +262,28 @@ def update_miner_data(self, timenow, payment=True, live_data=True, performance=T payment_data['miner'] = miner self.db.insert_data('payment', payment_data) - if performance: - shorten_miner = '{}...{}'.format(miner[:3], miner[-5:]) - - miner_blocks = block_data[block_data.miner == shorten_miner] - try: - performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) - performance_df['miner'] = miner - - except ValueError: - # might need to add something here - pass - if miner_blocks.empty: - # still need to adjust to pull from performance table for this miner - latest = min(performance_df.created) - last_block_found = 'N/A' - - else: - latest = str(max(miner_blocks.time_found)) - last_block_found = latest + shorten_miner = '{}...{}'.format(miner[:3], miner[-5:]) + + miner_blocks = block_data[block_data.miner == shorten_miner] + try: + performance_df = pd.concat(worker_to_df(sample) for sample in performance_samples) + performance_df['miner'] = miner + + except ValueError: + # might need to add something here + pass + + if miner_blocks.empty: + # still need to adjust to pull from performance table for this miner + latest = min(performance_df.created) + last_block_found = 'N/A' + + else: + latest = str(max(miner_blocks.time_found)) + last_block_found = latest + + if performance: self.insert_df_rows(performance_df, 'performance') From 194d1000e5e2fb0f14f4acc185f54f123d749db3 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Thu, 2 May 2024 11:47:42 -0600 Subject: [PATCH 13/16] fixed bug that would delete live worker data when we didnt want too --- layouts/mining_page.py | 5 +- testing_2_db.ipynb | 382 +++++++++++++++--------- utils/api_2_db.py | 25 +- utils/crontab_updates | 6 +- utils/init_db.py | 5 +- utils/update_blocks_and_workers.py | 6 +- utils/update_payment_and_performance.py | 5 +- utils/update_pool_stats.py | 5 +- 8 files changed, 275 insertions(+), 164 deletions(-) mode change 100644 => 100755 utils/update_blocks_and_workers.py mode change 100644 => 100755 utils/update_payment_and_performance.py mode change 100644 => 100755 utils/update_pool_stats.py diff --git a/layouts/mining_page.py b/layouts/mining_page.py index a96dd732..06539719 100644 --- a/layouts/mining_page.py +++ b/layouts/mining_page.py @@ -51,8 +51,6 @@ def update_front_row(n, pathname): my_worker_df = total_df[total_df.miner == miner] try: my_total_hash = my_worker_df.hashrate.item() - - # print(my_worker_df.hashrate, 'TESTESTTEST') except ValueError: timenow = pd.Timestamp.now() db_sync.update_miner_data(timenow=timenow, payment=False, live_data=True, performance=False) @@ -60,8 +58,7 @@ def update_front_row(n, pathname): total_df = worker_df[worker_df.worker == 'totals'] my_worker_df = total_df[total_df.miner == miner] my_total_hash = my_worker_df.hashrate.item() - # print(my_worker_df.hashrate, 'TESTESTTEST') - # my_total_hash = my_worker_df.hashrate.item() + my_effort = my_worker_df.effort.item() my_ttf = my_worker_df.ttf.item() diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index 745f8317..e774f4e7 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -8,7 +8,11 @@ "outputs": [], "source": [ "from utils.api_2_db import DataSyncer\n", - "import pandas as pd" + "import pandas as pd\n", + "from utils.update_blocks_and_workers import update_blocks_and_live_workers\n", + "from utils.update_payment_and_performance import update_payment_and_performance\n", + "from utils.update_pool_stats import update_pool_stats\n", + "from utils.init_db import init_db" ] }, { @@ -16,16 +20,7 @@ "execution_count": 2, "id": "11604c9d-4ef6-48da-939f-fac113478414", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Connection failed: could not translate host name \"db\" to address: Temporary failure in name resolution\n", - "\n" - ] - } - ], + "outputs": [], "source": [ "db_sync = DataSyncer(config_path=\"../conf\")\n", "miner = '9ehJZvPDgvCNNd2zTQHxnSpcCAtb1kHbEN1VAgeoRD5DPVApYkk'" @@ -34,9 +29,20 @@ { "cell_type": "code", "execution_count": 3, - "id": "72901a13-6ac4-4d3d-b93e-b9ae940ed62f", + "id": "4994b7a3-98ce-48ba-9635-3850b2a6f9fd", "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Batch 1/1: Deleted up to 10 rows from stats\n", + "Batch 1/1: Deleted up to 10000 rows from block\n", + "Batch 1/1: Deleted up to 10000 rows from payment\n", + "Batch 1/1: Deleted up to 10000 rows from live_worker\n", + "Batch 1/1: Deleted up to 10000 rows from performance\n" + ] + }, { "data": { "text/plain": [ @@ -49,115 +55,117 @@ } ], "source": [ - "# db_sync.__delete_table__()\n", - "db_sync.__create_table__()" + "db_sync.__delete_table__()" ] }, { "cell_type": "code", "execution_count": 4, - "id": "2736017b-7f7c-4f92-a8f0-9098dbcad123", + "id": "7fd703d1-62a2-4def-a041-09dad714ab9e", "metadata": {}, - "outputs": [], - "source": [ - "timenow = pd.Timestamp.now()" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "id": "fedbaf9b-d0df-4450-8584-27b4b4d5dc5a", - "metadata": { - "scrolled": true - }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "UPDATED BLOCK TABLE SUCCESFULLY\n" + "UPDATED STATS TABLE SUCCESFULLY\n" ] }, { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
\n", - "
" - ], - "text/plain": [ - "Empty DataFrame\n", - "Columns: []\n", - "Index: []" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "UPDATED BLOCK TABLE SUCCESFULLY\n", + "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", + " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", + " 'sharespersecond', 'networktype', 'networkhashrate',\n", + " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", + " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", + " 'insert_time_stamp'],\n", + " dtype='object')\n", + "no live data for miner 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN\n", + "no live data for miner 9eYXGx2AzwzbgThF7sU2JKspqUbhr5nMgnVNokNSWx7SFYYbvvV\n", + "no live data for miner 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX\n", + "no live data for miner 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb\n", + "no live data for miner 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J\n", + "no live data for miner 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ\n", + "no live data for miner 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17\n", + "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n" + ] } ], "source": [ - "db_sync.update_block_data(timenow)\n", - "db_sync.db.fetch_data('block')" + "init_db()" ] }, { "cell_type": "code", - "execution_count": 8, - "id": "7e548ecd-b1f4-4c95-bfca-dc55f3932321", + "execution_count": 5, + "id": "b586b668-4840-46f4-b2c6-d169ecf87f16", "metadata": {}, "outputs": [ { - "ename": "AttributeError", - "evalue": "'DataFrame' object has no attribute 'worker'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m/tmp/ipykernel_4008628/914048340.py\u001b[0m in \u001b[0;36m?\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0mworker_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mdb_sync\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfetch_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'live_worker'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mtotal_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mworker_df\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mworker_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mworker\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m'totals'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3\u001b[0m \u001b[0mmy_worker_df\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtotal_df\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mtotal_df\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mminer\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0mminer\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 6295\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mname\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_accessors\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6296\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_info_axis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_can_hold_identifiers_and_holds_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6297\u001b[0m ):\n\u001b[1;32m 6298\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 6299\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'worker'" + "name": "stdout", + "output_type": "stream", + "text": [ + "UPDATED BLOCK TABLE SUCCESFULLY\n", + "Batch 1/1: Deleted up to 10000 rows from live_worker\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", + " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", + " 'sharespersecond', 'networktype', 'networkhashrate',\n", + " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", + " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", + " 'insert_time_stamp'],\n", + " dtype='object')\n", + "no live data for miner 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN\n", + "no live data for miner 9eYXGx2AzwzbgThF7sU2JKspqUbhr5nMgnVNokNSWx7SFYYbvvV\n", + "no live data for miner 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX\n", + "no live data for miner 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb\n", + "no live data for miner 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J\n", + "no live data for miner 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ\n", + "no live data for miner 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17\n", + "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n" ] } ], "source": [ - "worker_df = db_sync.db.fetch_data('live_worker')\n", - "total_df = worker_df[worker_df.worker == 'totals']\n", - "my_worker_df = total_df[total_df.miner == miner]" + "update_blocks_and_live_workers()" ] }, { "cell_type": "code", "execution_count": 6, - "id": "dde69db9-7336-4774-9332-ef4baf4d2517", + "id": "4bae6d28-ddd3-4b9e-9d34-34eeff29e80b", "metadata": {}, "outputs": [ { - "name": "stdout", + "name": "stderr", "output_type": "stream", "text": [ - "UPDATED STATS TABLE SUCCESFULLY\n" + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" ] }, { @@ -181,17 +189,135 @@ " \n", " \n", " \n", + " worker\n", + " hashrate\n", + " shares_per_second\n", + " created\n", + " miner\n", " \n", " \n", " \n", + " \n", + " 0\n", + " Rig-01\n", + " 1741.95\n", + " 0.07\n", + " 2024-05-01 17:00:00\n", + " 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...\n", + " \n", + " \n", + " 1\n", + " Rig-02\n", + " 1634.19\n", + " 0.08\n", + " 2024-05-01 17:00:00\n", + " 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...\n", + " \n", + " \n", + " 2\n", + " Rig_03\n", + " 1061.84\n", + " 0.07\n", + " 2024-05-01 17:00:00\n", + " 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...\n", + " \n", + " \n", + " 3\n", + " totals\n", + " 4437.98\n", + " 0.22\n", + " 2024-05-01 17:00:00\n", + " 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...\n", + " \n", + " \n", + " 4\n", + " Rig-01\n", + " 1790.87\n", + " 0.07\n", + " 2024-05-01 18:00:00\n", + " 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...\n", + " \n", + " \n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " ...\n", + " \n", + " \n", + " 2730\n", + " totals\n", + " 44.61\n", + " 0.01\n", + " 2024-05-02 16:00:00\n", + " 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...\n", + " \n", + " \n", + " 2731\n", + " 3070\n", + " 55.58\n", + " 0.01\n", + " 2024-05-02 06:00:00\n", + " 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...\n", + " \n", + " \n", + " 2732\n", + " totals\n", + " 55.58\n", + " 0.01\n", + " 2024-05-02 06:00:00\n", + " 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...\n", + " \n", + " \n", + " 2733\n", + " 3070\n", + " 16.46\n", + " 0.00\n", + " 2024-05-02 07:00:00\n", + " 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...\n", + " \n", + " \n", + " 2734\n", + " totals\n", + " 16.46\n", + " 0.00\n", + " 2024-05-02 07:00:00\n", + " 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...\n", + " \n", " \n", "\n", + "

2735 rows × 5 columns

\n", "" ], "text/plain": [ - "Empty DataFrame\n", - "Columns: []\n", - "Index: []" + " worker hashrate shares_per_second created \\\n", + "0 Rig-01 1741.95 0.07 2024-05-01 17:00:00 \n", + "1 Rig-02 1634.19 0.08 2024-05-01 17:00:00 \n", + "2 Rig_03 1061.84 0.07 2024-05-01 17:00:00 \n", + "3 totals 4437.98 0.22 2024-05-01 17:00:00 \n", + "4 Rig-01 1790.87 0.07 2024-05-01 18:00:00 \n", + "... ... ... ... ... \n", + "2730 totals 44.61 0.01 2024-05-02 16:00:00 \n", + "2731 3070 55.58 0.01 2024-05-02 06:00:00 \n", + "2732 totals 55.58 0.01 2024-05-02 06:00:00 \n", + "2733 3070 16.46 0.00 2024-05-02 07:00:00 \n", + "2734 totals 16.46 0.00 2024-05-02 07:00:00 \n", + "\n", + " miner \n", + "0 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "1 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "2 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "3 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "4 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", + "... ... \n", + "2730 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", + "2731 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", + "2732 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", + "2733 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", + "2734 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", + "\n", + "[2735 rows x 5 columns]" ] }, "execution_count": 6, @@ -200,90 +326,58 @@ } ], "source": [ - "db_sync.update_pool_stats(timenow)\n", - "db_sync.db.fetch_data('stats')" + "db_sync.db.fetch_data('performance')" ] }, { "cell_type": "code", "execution_count": 7, - "id": "2ceade65-613b-413e-9c46-df3e12e15911", - "metadata": { - "scrolled": true - }, + "id": "92e7468a-4474-45cc-8b02-a12bcb93aa3c", + "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "RangeIndex(start=0, stop=0, step=1)\n" + "Batch 1/1: Deleted up to 10000 rows from performance\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + " return pd.read_sql_query(query, self.conn)\n" ] }, { - "ename": "AttributeError", - "evalue": "'DataFrame' object has no attribute 'insert_time_stamp'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m/tmp/ipykernel_4008628/3030957705.py\u001b[0m in \u001b[0;36m?\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdb_sync\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mupdate_miner_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtimenow\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;32m~/Documents/sigmanaut-mining-pool-ui/utils/api_2_db.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, timenow, payment, live_data, performance)\u001b[0m\n\u001b[1;32m 225\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 226\u001b[0m \u001b[0;31m# time_now = pd.Timestamp.now()\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 227\u001b[0m \u001b[0mstats\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfetch_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'stats'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 228\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstats\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 229\u001b[0;31m \u001b[0mstats\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mstats\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mstats\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minsert_time_stamp\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0mmax\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstats\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minsert_time_stamp\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 230\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 231\u001b[0m \u001b[0mblock_data\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdb\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfetch_data\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'block'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 232\u001b[0m \u001b[0mnetworkHashrate\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mstats\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'networkhashrate'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# use logic to get the lastest not just the first index\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m~/.local/lib/python3.10/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m?\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 6295\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mname\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_accessors\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6296\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_info_axis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_can_hold_identifiers_and_holds_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6297\u001b[0m ):\n\u001b[1;32m 6298\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 6299\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'insert_time_stamp'" + "name": "stdout", + "output_type": "stream", + "text": [ + "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", + " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", + " 'sharespersecond', 'networktype', 'networkhashrate',\n", + " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", + " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", + " 'insert_time_stamp'],\n", + " dtype='object')\n", + "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n" ] } ], "source": [ - "db_sync.update_miner_data(timenow)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "dc05f4bd-a2b9-4fb2-a57b-95f8ac26d9fe", - "metadata": {}, - "outputs": [], - "source": [ - "db_sync.db.fetch_data('live_worker')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5bdddb9d-f954-42b0-a637-98636c813226", - "metadata": {}, - "outputs": [], - "source": [ - "db_sync.db.fetch_data('payment')" + "update_payment_and_performance()" ] }, { "cell_type": "code", "execution_count": null, - "id": "3f725613-833e-4608-a8d7-15f1c867bb2f", + "id": "729c6b38-f34e-454d-9325-630be159eb62", "metadata": {}, "outputs": [], "source": [ - "db_sync.db.fetch_data('performance')" + "update_pool_stats()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "235c17dc-5367-4a4a-b1bc-a8e84efd9ccf", - "metadata": {}, - "outputs": [], - "source": [ - "db_sync.db.get_db_size()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3b6d9d33-ca53-411e-8816-4bcbc8aa69d3", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/utils/api_2_db.py b/utils/api_2_db.py index 29b726f1..160e9a42 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -8,8 +8,11 @@ import pytz import pandas as pd -from utils.db_util import PostgreSQLDatabase - +try: + from utils.db_util import PostgreSQLDatabase +except ModuleNotFoundError: + from db_util import PostgreSQLDatabase + def format_datetime(time_str): # List of possible datetime formats to try formats = [ @@ -96,7 +99,7 @@ def __init__(self, config_path: str): self.data = {'poolEffort': 0} - self.db = PostgreSQLDatabase('marctheshark', 'password', 'db', 5432, 'mining-db') + self.db = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db') self.db.connect() self.db.get_cursor() @@ -214,11 +217,15 @@ def update_block_data(self, timenow): print('UPDATED BLOCK TABLE SUCCESFULLY') def update_miner_data(self, timenow, payment=True, live_data=True, performance=True): - self.db.delete_data_in_batches('live_worker') - self.db.create_table('live_worker', self.live_worker_headers) + if live_data: + self.db.delete_data_in_batches('live_worker') + self.db.create_table('live_worker', self.live_worker_headers) - self.db.delete_data_in_batches('performance') - self.db.create_table('performance', self.live_worker_headers) + if performance: + self.db.delete_data_in_batches('performance') + self.db.create_table('performance', self.live_worker_headers) + + _, erg_price = self.price_reader.get() miner_data = self.get_api_data('{}/{}'.format(self.base_api, 'miners?pageSize=5000')) miner_ls = [sample['miner'] for sample in miner_data] @@ -255,14 +262,14 @@ def update_miner_data(self, timenow, payment=True, live_data=True, performance=T payment_data['lastPayment'] = 'N/A' payment_data['lastPaymentLink'] = 'Keep Mining!' - performance_samples = mining_data.pop('performanceSamples') + payment_data['created_at'] = timenow payment_data['miner'] = miner self.db.insert_data('payment', payment_data) - + performance_samples = mining_data.pop('performanceSamples') shorten_miner = '{}...{}'.format(miner[:3], miner[-5:]) miner_blocks = block_data[block_data.miner == shorten_miner] diff --git a/utils/crontab_updates b/utils/crontab_updates index f95d74a6..7e14e63c 100644 --- a/utils/crontab_updates +++ b/utils/crontab_updates @@ -1,10 +1,10 @@ # Run 'update_blocks_and_workers.py' every minute -*/2 * * * * python3 /utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 +*/5 * * * * python3 ~/Documents/sigmanaut-mining-pool-ui/utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 # Run 'update_payment_and_performance.py' every hour on the hour -*/2 * * * * python3 /utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 +*/2 * * * * python3 ~/Documents/sigmanaut-mining-pool-ui/utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 # Run 'update_pool_stats.py' every minute -*/2 * * * * python3 /utils/update_pool_stats.py >> /var/log/cron.log 2>&1 +*/2 * * * * python3 ~/Documents/sigmanaut-mining-pool-ui/utils/update_pool_stats.py >> /var/log/cron.log 2>&1 # Don't forget to leave an empty line at the end of the file diff --git a/utils/init_db.py b/utils/init_db.py index 2d2b2cee..214b2b17 100644 --- a/utils/init_db.py +++ b/utils/init_db.py @@ -1,4 +1,7 @@ -from utils.api_2_db import DataSyncer +try: + from utils.api_2_db import DataSyncer +except ModuleNotFoundError: + from api_2_db import DataSyncer from pandas import Timestamp diff --git a/utils/update_blocks_and_workers.py b/utils/update_blocks_and_workers.py old mode 100644 new mode 100755 index 88d5da57..0e0248df --- a/utils/update_blocks_and_workers.py +++ b/utils/update_blocks_and_workers.py @@ -1,4 +1,8 @@ -from utils.api_2_db import DataSyncer +try: + from utils.api_2_db import DataSyncer +except ModuleNotFoundError: + from api_2_db import DataSyncer + from pandas import Timestamp diff --git a/utils/update_payment_and_performance.py b/utils/update_payment_and_performance.py old mode 100644 new mode 100755 index 8b0c6c1b..e921b93f --- a/utils/update_payment_and_performance.py +++ b/utils/update_payment_and_performance.py @@ -1,4 +1,7 @@ -from utils.api_2_db import DataSyncer +try: + from utils.api_2_db import DataSyncer +except ModuleNotFoundError: + from api_2_db import DataSyncer from pandas import Timestamp def update_payment_and_performance(): diff --git a/utils/update_pool_stats.py b/utils/update_pool_stats.py old mode 100644 new mode 100755 index 7b175d36..189c1017 --- a/utils/update_pool_stats.py +++ b/utils/update_pool_stats.py @@ -1,4 +1,7 @@ -from utils.api_2_db import DataSyncer +try: + from utils.api_2_db import DataSyncer +except ModuleNotFoundError: + from api_2_db import DataSyncer from pandas import Timestamp def update_pool_stats(): From 799cba3029cb7b6752ab007c2c56cd4ec507fbbf Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Wed, 8 May 2024 12:20:17 -0600 Subject: [PATCH 14/16] finalized the db upd8s --- Dockerfile.UI | 9 +- Dockerfile.all | 31 ++++ Dockerfile.cron | 13 +- conf/conf.yaml | 2 +- docker-compose-old.yaml | 32 +++- docker-compose.yaml | 13 +- entrypoint.sh | 6 + layouts/mining_page.py | 28 +-- requirements.txt | 3 +- testing_2_db.ipynb | 371 ++++++++++------------------------------ utils/api_2_db.py | 38 ++-- utils/crontab_updates | 12 +- utils/db_util.py | 72 ++++++-- utils/init_db.py | 7 +- 14 files changed, 281 insertions(+), 356 deletions(-) create mode 100644 Dockerfile.all create mode 100755 entrypoint.sh diff --git a/Dockerfile.UI b/Dockerfile.UI index aa203ab5..2c498938 100644 --- a/Dockerfile.UI +++ b/Dockerfile.UI @@ -1,14 +1,14 @@ # Use an official Python runtime as a parent image -FROM python:3.8-slim +FROM python:3.9 # Set the working directory in the container -WORKDIR /usr/src/app +WORKDIR /app # Copy the current directory contents into the container at /usr/src/app -COPY . /usr/src/app +COPY . /app # Install any needed packages specified in requirements.txt -RUN pip install -r requirements.txt +RUN pip3 install -r /app/requirements.txt # Make port 8050 available to the world outside this container EXPOSE 8050 @@ -17,4 +17,5 @@ EXPOSE 8050 ENV FLASK_APP app.py # Run the application +CMD ["python3", "-m", "utils.init_db"] CMD ["gunicorn", "-w", "4", "--timeout", "2000", "-b", "0.0.0.0:8050", "app:server"] diff --git a/Dockerfile.all b/Dockerfile.all new file mode 100644 index 00000000..237d3f77 --- /dev/null +++ b/Dockerfile.all @@ -0,0 +1,31 @@ +# Use an official Python runtime as a parent image +FROM python:3.9 + +# Set the working directory in the container +WORKDIR /app + +# Copy the current directory contents into the container +COPY . /app + +# Install cron and Python dependencies +RUN apt-get update && apt-get -y install cron && \ + pip3 install --no-cache-dir -r /app/requirements.txt + +# Setup cron jobs +COPY utils/crontab_updates /etc/cron.d/crontab_updates +RUN chmod 0644 /etc/cron.d/crontab_updates && \ + crontab /etc/cron.d/crontab_updates && \ + touch /var/log/cron.log + +# Make the entrypoint script executable and set it as the entrypoint +COPY entrypoint.sh /usr/local/bin/entrypoint.sh +RUN chmod +x /usr/local/bin/entrypoint.sh + +# Make port 8050 available to the world outside this container +EXPOSE 8050 + +# Define environment variable +ENV FLASK_APP app.py + +# Command to run the application and cron jobs +CMD ["entrypoint.sh"] diff --git a/Dockerfile.cron b/Dockerfile.cron index 335145a1..7fbb6e55 100644 --- a/Dockerfile.cron +++ b/Dockerfile.cron @@ -1,13 +1,6 @@ FROM python:3.9 WORKDIR /app -# Install Python dependencies -COPY requirements.txt . -RUN pip install --no-cache-dir -r requirements.txt - -# Set the working directory in the container -WORKDIR /app - # Copy the current directory contents into the container at /usr/src/app COPY . /app @@ -20,7 +13,9 @@ RUN chmod 0644 /etc/cron.d/crontab_updates RUN crontab /etc/cron.d/crontab_updates RUN touch /var/log/cron.log +# Install Python dependencies +RUN pip3 install --no-cache-dir -r /app/requirements.txt + + # Start cron and tail the log file to keep the container running CMD cron && tail -f /var/log/cron.log -CMD ['ls'] -CMD ["python3", "-m", "utils.init_db"] \ No newline at end of file diff --git a/conf/conf.yaml b/conf/conf.yaml index 86cf1e98..e2a4aef5 100644 --- a/conf/conf.yaml +++ b/conf/conf.yaml @@ -62,4 +62,4 @@ default_values: 'ttf NUMERIC', 'last_block_found VARCHAR(100)'] performance_headers: ['worker VARCHAR(50)', 'hashrate NUMERIC', 'shares_per_second NUMERIC', - 'created TIMESTAMP', 'miner VARCHAR(60)'] \ No newline at end of file + 'created TIMESTAMP', 'miner VARCHAR(60)', 'insert_time_stamp TIMESTAMP'] \ No newline at end of file diff --git a/docker-compose-old.yaml b/docker-compose-old.yaml index 925c5df1..283d1d7b 100644 --- a/docker-compose-old.yaml +++ b/docker-compose-old.yaml @@ -1,8 +1,36 @@ -version: '3' +version: '3.8' + services: - pool-ui: + db: + image: postgres:latest + environment: + POSTGRES_DB: mining-db + POSTGRES_USER: marctheshark + POSTGRES_PASSWORD: password + volumes: + - mining_data:/var/lib/postgresql/data + restart: unless-stopped + ports: + - "5431:5432" + + app: build: context: . + volumes: + - ./:/app + ports: + - "8050:8050" + restart: unless-stopped + depends_on: + - db + + pool-ui: image: ghcr.io/marctheshark3/sigmanaut-mining-pool-ui:main ports: - "8050:8050" + restart: unless-stopped + depends_on: + - db + +volumes: + mining_data: diff --git a/docker-compose.yaml b/docker-compose.yaml index 5268464b..905e8a12 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -13,25 +13,16 @@ services: ports: - "5431:5432" - cronjob: + app: build: context: . - dockerfile: Dockerfile.cron + dockerfile: Dockerfile.all # Make sure this is the name of your Dockerfile volumes: - ./:/app - restart: unless-stopped - depends_on: - - db - - web: - build: - context: . - dockerfile: Dockerfile.UI ports: - "8050:8050" restart: unless-stopped depends_on: - - cronjob - db volumes: diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100755 index 00000000..069079ba --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# Run the database initialization script +python3 -m utils.init_db + +# Start the web server with gunicorn +gunicorn -w 4 --timeout 2000 -b 0.0.0.0:8050 app:server diff --git a/layouts/mining_page.py b/layouts/mining_page.py index 06539719..6fa35b88 100644 --- a/layouts/mining_page.py +++ b/layouts/mining_page.py @@ -49,18 +49,19 @@ def update_front_row(n, pathname): worker_df = db_sync.db.fetch_data('live_worker') total_df = worker_df[worker_df.worker == 'totals'] my_worker_df = total_df[total_df.miner == miner] - try: - my_total_hash = my_worker_df.hashrate.item() - except ValueError: - timenow = pd.Timestamp.now() - db_sync.update_miner_data(timenow=timenow, payment=False, live_data=True, performance=False) - worker_df = db_sync.db.fetch_data('live_worker') - total_df = worker_df[worker_df.worker == 'totals'] - my_worker_df = total_df[total_df.miner == miner] - my_total_hash = my_worker_df.hashrate.item() - - my_effort = my_worker_df.effort.item() - my_ttf = my_worker_df.ttf.item() + latest_worker = my_worker_df[my_worker_df.created == max(my_worker_df.created)] + # try: + my_total_hash = latest_worker.hashrate.item() + # except ValueError: + # timenow = pd.Timestamp.now() + # db_sync.update_miner_data(timenow=timenow, payment=False, live_data=True, performance=False) + # worker_df = db_sync.db.fetch_data('live_worker') + # total_df = worker_df[worker_df.worker == 'totals'] + # my_worker_df = total_df[total_df.miner == miner] + # my_total_hash = my_worker_df.hashrate.item() + + my_effort = latest_worker.effort.item() + my_ttf = latest_worker.ttf.item() data = db_sync.db.fetch_data('stats') data = data[data.insert_time_stamp == max(data.insert_time_stamp)] @@ -172,6 +173,7 @@ def update_charts(n_intervals, pathname): wallet = unquote(pathname.lstrip('/')) df = db_sync.db.fetch_data('performance') my_worker_performance = df[df.miner == wallet] + my_worker_performance= my_worker_performance.sort_values('created') miner_performance_chart = px.line(my_worker_performance, x='created', @@ -209,6 +211,7 @@ def update_table(n_intervals, table, pathname): if table == 'workers': df = db_sync.db.fetch_data('live_worker') + df = df[df.created == max(df.created)] df = df[df.miner == wallet] df = df[df.worker != 'totals'] @@ -222,6 +225,7 @@ def update_table(n_intervals, table, pathname): my_block_df = block_df[block_df.miner == short_wallet] df = my_block_df print(df.columns) + df['effort'] = 100 * df['effort'] df = df.filter(['time_found', 'blockheight', 'effort', 'reward', 'confirmationprogress']) df = df.rename(columns={'time_found': 'Time Found', 'blockheight': 'Height', 'effort': 'Effort [%]', 'confirmationprogress': 'Confirmation [%]'}) diff --git a/requirements.txt b/requirements.txt index db91a12a..9ff50953 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,6 @@ hydra-core dash +requests pandas dash-bootstrap-components pycoingecko @@ -12,4 +13,4 @@ flask-session dash-auth locust cachelib -psycopg2-binary \ No newline at end of file +psycopg2-binary diff --git a/testing_2_db.ipynb b/testing_2_db.ipynb index e774f4e7..a6416ea0 100644 --- a/testing_2_db.ipynb +++ b/testing_2_db.ipynb @@ -28,54 +28,39 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "4994b7a3-98ce-48ba-9635-3850b2a6f9fd", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Batch 1/1: Deleted up to 10 rows from stats\n", - "Batch 1/1: Deleted up to 10000 rows from block\n", - "Batch 1/1: Deleted up to 10000 rows from payment\n", - "Batch 1/1: Deleted up to 10000 rows from live_worker\n", - "Batch 1/1: Deleted up to 10000 rows from performance\n" - ] - }, - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "metadata": { + "scrolled": true + }, + "outputs": [], "source": [ "db_sync.__delete_table__()" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "id": "7fd703d1-62a2-4def-a041-09dad714ab9e", - "metadata": {}, + "metadata": { + "scrolled": true + }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "UPDATED STATS TABLE SUCCESFULLY\n" + "intializing DB\n", + "Batch 1/1: Deleted up to 100 rows from stats\n", + "UPDATED STATS TABLE SUCCESFULLY\n", + "UPDATED BLOCK TABLE SUCCESFULLY\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", + "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:222: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", " return pd.read_sql_query(query, self.conn)\n" ] }, @@ -83,7 +68,6 @@ "name": "stdout", "output_type": "stream", "text": [ - "UPDATED BLOCK TABLE SUCCESFULLY\n", "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", " 'sharespersecond', 'networktype', 'networkhashrate',\n", @@ -91,14 +75,10 @@ " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", " 'insert_time_stamp'],\n", " dtype='object')\n", - "no live data for miner 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN\n", - "no live data for miner 9eYXGx2AzwzbgThF7sU2JKspqUbhr5nMgnVNokNSWx7SFYYbvvV\n", - "no live data for miner 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX\n", - "no live data for miner 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb\n", "no live data for miner 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J\n", - "no live data for miner 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ\n", - "no live data for miner 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17\n", - "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n" + "no live data for miner 9gHULKUh8kLBBc6F6ddtyzeyhzz2KzGerPbFw7ZHmSUPrRGfnoz\n", + "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n", + "complete\n" ] } ], @@ -108,263 +88,69 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, + "id": "b1a091c8-8c73-4dcf-b74d-26832707cae3", + "metadata": {}, + "outputs": [], + "source": [ + "update_pool_stats()" + ] + }, + { + "cell_type": "code", + "execution_count": null, "id": "b586b668-4840-46f4-b2c6-d169ecf87f16", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "UPDATED BLOCK TABLE SUCCESFULLY\n", - "Batch 1/1: Deleted up to 10000 rows from live_worker\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", - " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", - " 'sharespersecond', 'networktype', 'networkhashrate',\n", - " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", - " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", - " 'insert_time_stamp'],\n", - " dtype='object')\n", - "no live data for miner 9htjnnmFbPKAM86zHtANqxfyZQomqMpvvY5jp3C4mcfWjuahaFN\n", - "no live data for miner 9eYXGx2AzwzbgThF7sU2JKspqUbhr5nMgnVNokNSWx7SFYYbvvV\n", - "no live data for miner 9g4f585vPtgA5PKhSRcaPBhtfW3HYRw2qe3aemxxnD5Y1KiopyX\n", - "no live data for miner 9hNJcmkKcMmrphpc12deJJi6gNcgiX269VEEZCCgLVBPiETigVb\n", - "no live data for miner 9fGzn8VCszvFMXo2KDrQiVowwSdchVT13ygX26RKUfkjcruRq7J\n", - "no live data for miner 9iQS22vfWdF2N84Lvv9jgAMFGLyL7t17SWbHGEfaddaG7ZbL3fJ\n", - "no live data for miner 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqDepj17\n", - "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n" - ] - } - ], + "outputs": [], "source": [ "update_blocks_and_live_workers()" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "id": "4bae6d28-ddd3-4b9e-9d34-34eeff29e80b", + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "df = db_sync.db.fetch_data('performance')\n", + "df = df[df.miner == miner]\n", + "df = df[df.worker == 'GRAYSPEAK']\n", + "df[df.created == '2024-05-06 16:00:00']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "419e47a1-3e7f-4636-8735-415e9d483ad1", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
workerhashrateshares_per_secondcreatedminer
0Rig-011741.950.072024-05-01 17:00:009f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
1Rig-021634.190.082024-05-01 17:00:009f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
2Rig_031061.840.072024-05-01 17:00:009f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
3totals4437.980.222024-05-01 17:00:009f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
4Rig-011790.870.072024-05-01 18:00:009f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu...
..................
2730totals44.610.012024-05-02 16:00:009gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ...
2731307055.580.012024-05-02 06:00:009iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...
2732totals55.580.012024-05-02 06:00:009iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...
2733307016.460.002024-05-02 07:00:009iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...
2734totals16.460.002024-05-02 07:00:009iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD...
\n", - "

2735 rows × 5 columns

\n", - "
" - ], - "text/plain": [ - " worker hashrate shares_per_second created \\\n", - "0 Rig-01 1741.95 0.07 2024-05-01 17:00:00 \n", - "1 Rig-02 1634.19 0.08 2024-05-01 17:00:00 \n", - "2 Rig_03 1061.84 0.07 2024-05-01 17:00:00 \n", - "3 totals 4437.98 0.22 2024-05-01 17:00:00 \n", - "4 Rig-01 1790.87 0.07 2024-05-01 18:00:00 \n", - "... ... ... ... ... \n", - "2730 totals 44.61 0.01 2024-05-02 16:00:00 \n", - "2731 3070 55.58 0.01 2024-05-02 06:00:00 \n", - "2732 totals 55.58 0.01 2024-05-02 06:00:00 \n", - "2733 3070 16.46 0.00 2024-05-02 07:00:00 \n", - "2734 totals 16.46 0.00 2024-05-02 07:00:00 \n", - "\n", - " miner \n", - "0 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "1 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "2 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "3 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "4 9f3FRr4XudxVs1V35At1X5yj7LmQmnWqG46LqFKVNRf2Tu... \n", - "... ... \n", - "2730 9gyKCPYkaBJp7z8NxxCygjwB6u9GLudiakUEUPpZ1bjhbJ... \n", - "2731 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", - "2732 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", - "2733 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", - "2734 9iHhp79F5CXRq3DYS4urz8q4aDyLAx1L5d6cyucrh9gPqD... \n", - "\n", - "[2735 rows x 5 columns]" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ - "db_sync.db.fetch_data('performance')" + "worker_df = db_sync.db.fetch_data('live_worker')\n", + "total_df = worker_df[worker_df.worker == 'totals']\n", + "my_worker_df = total_df[total_df.miner == miner]\n", + "latest_worker = my_worker_df[my_worker_df.created == max(my_worker_df.created)]" ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, + "id": "426a7e20-dc50-4ee0-aa96-b0cb419058f2", + "metadata": {}, + "outputs": [], + "source": [ + "my_total_hash = latest_worker.hashrate.item()\n", + "my_total_hash" + ] + }, + { + "cell_type": "code", + "execution_count": null, "id": "92e7468a-4474-45cc-8b02-a12bcb93aa3c", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Batch 1/1: Deleted up to 10000 rows from performance\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/whaleshark/Documents/sigmanaut-mining-pool-ui/utils/db_util.py:180: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy.\n", - " return pd.read_sql_query(query, self.conn)\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Index(['fee', 'paid', 'blocks', 'last_block_found', 'enabled',\n", - " 'minimumpayment', 'payoutscheme', 'connectedminers', 'poolhashrate',\n", - " 'sharespersecond', 'networktype', 'networkhashrate',\n", - " 'networkdifficulty', 'lastnetworkblocktime', 'blockheight',\n", - " 'connectedpeers', 'rewardtype', 'pooleffort', 'poolttf', 'price',\n", - " 'insert_time_stamp'],\n", - " dtype='object')\n", - "UPDATED LIVE WORK, PERFORMANCE, AND PAYMENT TABLES SUCCESFULLY\n" - ] - } - ], + "outputs": [], "source": [ "update_payment_and_performance()" ] @@ -378,6 +164,37 @@ "source": [ "update_pool_stats()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dca3cb9d-d4de-411b-8832-5dd41d582542", + "metadata": {}, + "outputs": [], + "source": [ + "df = db_sync.db.fetch_data('performance')\n", + "my_worker_performance = df[df.miner == miner]\n", + "t_df = my_worker_performance[my_worker_performance.worker == 'totals']\n", + "t_df.sort_values('created')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6c8d68d7-4500-43b2-9c1d-efe09cb65d29", + "metadata": {}, + "outputs": [], + "source": [ + "db_sync.db.get_db_size()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "718f6add-07eb-4e71-9df8-3c6b6a81fc4f", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { diff --git a/utils/api_2_db.py b/utils/api_2_db.py index 160e9a42..2560e659 100644 --- a/utils/api_2_db.py +++ b/utils/api_2_db.py @@ -99,7 +99,7 @@ def __init__(self, config_path: str): self.data = {'poolEffort': 0} - self.db = PostgreSQLDatabase('marctheshark', 'password', 'localhost', 5432, 'mining-db') + self.db = PostgreSQLDatabase('marctheshark', 'password', 'db', 5432, 'mining-db') self.db.connect() self.db.get_cursor() @@ -131,16 +131,17 @@ def __create_table__(self): return True def __delete_table__(self): - self.db.delete_data_in_batches('stats', 10) + self.db.delete_data_in_batches('stats', 100) self.db.delete_data_in_batches('block') self.db.delete_data_in_batches('payment') self.db.delete_data_in_batches('live_worker') self.db.delete_data_in_batches('performance') return True - def insert_df_rows(self, df, table): + def insert_df_rows(self, df, table, columns): for index, row in df.iterrows(): - self.db.insert_data(table, row.to_dict()) + # self.db.insert_data(table, row.to_dict()) + self.db.update_or_insert(table, row.to_dict(), columns) def update_pool_stats(self, timenow): ''' @@ -209,20 +210,26 @@ def update_block_data(self, timenow): data['time_found'] = format_datetime(data.pop('created')) data['confirmationProgress'] = data['confirmationProgress'] * 100 data['networkDifficulty'] = round(data['networkDifficulty'], 2) - data['effort'] = round(data['effort'], 2) + try: + data['effort'] = round(data['effort'], 2) + except KeyError: + data['effort'] = 0.000 data['reward'] = round(data['reward'], 2) data['miner'] = '{}...{}'.format(data['miner'][:3], data['miner'][-5:]) - self.db.update_or_insert('block', data) + try: + self.db.update_or_insert('block', data, ['hash']) + except KeyError: + pass print('UPDATED BLOCK TABLE SUCCESFULLY') def update_miner_data(self, timenow, payment=True, live_data=True, performance=True): if live_data: - self.db.delete_data_in_batches('live_worker') + # self.db.delete_data_in_batches('live_worker') self.db.create_table('live_worker', self.live_worker_headers) if performance: - self.db.delete_data_in_batches('performance') + # self.db.delete_data_in_batches('performance') self.db.create_table('performance', self.live_worker_headers) @@ -260,10 +267,7 @@ def update_miner_data(self, timenow, payment=True, live_data=True, performance=T except TypeError: payment_data['lastPayment'] = 'N/A' - payment_data['lastPaymentLink'] = 'Keep Mining!' - - - + payment_data['lastPaymentLink'] = 'Keep Mining!' payment_data['created_at'] = timenow payment_data['miner'] = miner @@ -291,8 +295,8 @@ def update_miner_data(self, timenow, payment=True, live_data=True, performance=T last_block_found = latest if performance: - - self.insert_df_rows(performance_df, 'performance') + # performance_df['insert_time_stamp'] = timenow + self.insert_df_rows(performance_df, 'performance', ['created', 'worker', 'hashrate']) if live_data: @@ -309,8 +313,10 @@ def update_miner_data(self, timenow, payment=True, live_data=True, performance=T live_df['ttf'] = [round(self.calculate_time_to_find_block(networkDifficulty, networkHashrate, temp_hash), 2) for temp_hash in live_df.hashrate] live_df['last_block_found'] = last_block_found - - self.insert_df_rows(live_df, 'live_worker') + + # live_df['created_at'] = timenow + self.insert_df_rows(live_df, 'live_worker', ['created', 'worker', 'hashrate']) + except KeyError: live_df = pd.DataFrame() diff --git a/utils/crontab_updates b/utils/crontab_updates index 7e14e63c..e04c3ce4 100644 --- a/utils/crontab_updates +++ b/utils/crontab_updates @@ -1,10 +1,10 @@ -# Run 'update_blocks_and_workers.py' every minute -*/5 * * * * python3 ~/Documents/sigmanaut-mining-pool-ui/utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 +# Run 'update_blocks_and_workers.py' every 2 minutes +*/2 * * * * python3 /app/utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 -# Run 'update_payment_and_performance.py' every hour on the hour -*/2 * * * * python3 ~/Documents/sigmanaut-mining-pool-ui/utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 +# Run 'update_payment_and_performance.py' every 30 minutes +*/30 * * * * python3 /app/utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 -# Run 'update_pool_stats.py' every minute -*/2 * * * * python3 ~/Documents/sigmanaut-mining-pool-ui/utils/update_pool_stats.py >> /var/log/cron.log 2>&1 +# Run 'update_pool_stats.py' every 2 minutes +*/2 * * * * python3 /app/utils/update_pool_stats.py >> /var/log/cron.log 2>&1 # Don't forget to leave an empty line at the end of the file diff --git a/utils/db_util.py b/utils/db_util.py index 576fab25..52af6743 100644 --- a/utils/db_util.py +++ b/utils/db_util.py @@ -120,34 +120,75 @@ def insert_data(self, table_name, data): finally: cursor.close() - def update_or_insert(self, table_name, data): + # def update_or_insert(self, table_name, data): + # """ + # Updates or inserts data based on hash and confirmation progress. + # Assumes data is a dictionary containing all necessary columns including hash and confirmationProgress. + + # :param table_name: Name of the table to update or insert into. + # :param data: Data dictionary where keys are column names and values are data values. + # """ + # hash = data['hash'] + # new_confirmation = data['confirmationProgress'] + # cursor = self.get_cursor() + # flag = False + # if cursor: + # try: + # # First, try to fetch the existing row with the same hash. + # cursor.execute("SELECT * FROM {} WHERE hash = %s".format(table_name), (hash,)) + # existing_row = cursor.fetchone() + + # if existing_row: + # existing_confirmation = existing_row[4] # Assuming confirmationProgress is the 5th column in the table + # if new_confirmation > existing_confirmation: + # # If new confirmation is greater, update the row. + # columns = ', '.join([f"{key} = %s" for key in data.keys()]) + # values = list(data.values()) + # cursor.execute(f"UPDATE {table_name} SET {columns} WHERE hash = %s", values + [hash]) + # flag = True + # else: + # # If no existing row, insert new. + # columns = ', '.join(data.keys()) + # placeholders = ', '.join(['%s'] * len(data)) + # cursor.execute(f"INSERT INTO {table_name} ({columns}) VALUES ({placeholders})", list(data.values())) + # flag = True + + # self.conn.commit() + # except psycopg2.OperationalError as e: + # print(f"Database operation failed: {e}") + # finally: + # cursor.close() + # return flag + + def update_or_insert(self, table_name, data, key_columns): """ - Updates or inserts data based on hash and confirmation progress. - Assumes data is a dictionary containing all necessary columns including hash and confirmationProgress. + Updates or inserts data based on specified key columns. + Assumes data is a dictionary containing all necessary columns. :param table_name: Name of the table to update or insert into. :param data: Data dictionary where keys are column names and values are data values. + :param key_columns: A list of column names to use as keys for identifying existing records. """ - hash = data['hash'] - new_confirmation = data['confirmationProgress'] cursor = self.get_cursor() flag = False if cursor: try: - # First, try to fetch the existing row with the same hash. - cursor.execute("SELECT * FROM {} WHERE hash = %s".format(table_name), (hash,)) + # Construct WHERE clause based on key columns + where_clause = ' AND '.join([f"{col} = %s" for col in key_columns]) + key_values = [data[col] for col in key_columns] + + # First, try to fetch the existing row with the same keys. + cursor.execute(f"SELECT * FROM {table_name} WHERE {where_clause}", key_values) existing_row = cursor.fetchone() if existing_row: - existing_confirmation = existing_row[4] # Assuming confirmationProgress is the 5th column in the table - if new_confirmation > existing_confirmation: - # If new confirmation is greater, update the row. - columns = ', '.join([f"{key} = %s" for key in data.keys()]) - values = list(data.values()) - cursor.execute(f"UPDATE {table_name} SET {columns} WHERE hash = %s", values + [hash]) - flag = True + # Update the row if it exists. + columns = ', '.join([f"{key} = %s" for key in data.keys() if key not in key_columns]) + values = [data[key] for key in data.keys() if key not in key_columns] + cursor.execute(f"UPDATE {table_name} SET {columns} WHERE {where_clause}", values + key_values) + flag = True else: - # If no existing row, insert new. + # Insert a new row if it doesn't exist. columns = ', '.join(data.keys()) placeholders = ', '.join(['%s'] * len(data)) cursor.execute(f"INSERT INTO {table_name} ({columns}) VALUES ({placeholders})", list(data.values())) @@ -162,6 +203,7 @@ def update_or_insert(self, table_name, data): + def fetch_data(self, table_name, columns='*', where=None): """ Fetches data from the specified table. diff --git a/utils/init_db.py b/utils/init_db.py index 214b2b17..8f79e7b5 100644 --- a/utils/init_db.py +++ b/utils/init_db.py @@ -6,14 +6,17 @@ def init_db(): + print('intializing DB') db_sync = DataSyncer(config_path="../conf") timenow = Timestamp.now() + db_sync.__delete_table__() db_sync.__create_table__() db_sync.update_pool_stats(timenow) - db_sync.db.fetch_data('stats') + # db_sync.db.fetch_data('stats') db_sync.update_block_data(timenow) - db_sync.db.fetch_data('block') + # db_sync.db.fetch_data('block') db_sync.update_miner_data(timenow) + print('complete') if __name__ == '__main__': From 2852b427dc84f6b61566c0e1af5d7a739753f5e7 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Wed, 8 May 2024 16:16:02 -0600 Subject: [PATCH 15/16] fixed cronjob files for python script --- entrypoint.sh | 6 ++++++ utils/crontab_updates | 6 +++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 069079ba..de386759 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -1,4 +1,10 @@ #!/bin/bash + +echo "Starting cron..." +cron +echo "Cron started." + + # Run the database initialization script python3 -m utils.init_db diff --git a/utils/crontab_updates b/utils/crontab_updates index e04c3ce4..6ab81a79 100644 --- a/utils/crontab_updates +++ b/utils/crontab_updates @@ -1,10 +1,10 @@ # Run 'update_blocks_and_workers.py' every 2 minutes -*/2 * * * * python3 /app/utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 +*/2 * * * * cd /app && /usr/local/bin/python3 /app/utils/update_blocks_and_workers.py >> /var/log/cron.log 2>&1 # Run 'update_payment_and_performance.py' every 30 minutes -*/30 * * * * python3 /app/utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 +*/30 * * * * cd /app && /usr/local/bin/python3 /app/utils/update_payment_and_performance.py >> /var/log/cron.log 2>&1 # Run 'update_pool_stats.py' every 2 minutes -*/2 * * * * python3 /app/utils/update_pool_stats.py >> /var/log/cron.log 2>&1 +*/2 * * * * cd /app && /usr/local/bin/python3 /app/utils/update_pool_stats.py >> /var/log/cron.log 2>&1 # Don't forget to leave an empty line at the end of the file From ca09b1f558b53604ef78b69a63959da10b4a84b9 Mon Sep 17 00:00:00 2001 From: Marc Mailloux Date: Wed, 8 May 2024 16:18:29 -0600 Subject: [PATCH 16/16] adjusting dockerfiles --- Dockerfile.all => Dockerfile | 0 Dockerfile.UI | 21 ------------------- Dockerfile.cron | 21 ------------------- ...ompose-old.yaml => docker-compose-diy.yaml | 9 +------- docker-compose.yaml | 9 +++++++- 5 files changed, 9 insertions(+), 51 deletions(-) rename Dockerfile.all => Dockerfile (100%) delete mode 100644 Dockerfile.UI delete mode 100644 Dockerfile.cron rename docker-compose-old.yaml => docker-compose-diy.yaml (74%) diff --git a/Dockerfile.all b/Dockerfile similarity index 100% rename from Dockerfile.all rename to Dockerfile diff --git a/Dockerfile.UI b/Dockerfile.UI deleted file mode 100644 index 2c498938..00000000 --- a/Dockerfile.UI +++ /dev/null @@ -1,21 +0,0 @@ -# Use an official Python runtime as a parent image -FROM python:3.9 - -# Set the working directory in the container -WORKDIR /app - -# Copy the current directory contents into the container at /usr/src/app -COPY . /app - -# Install any needed packages specified in requirements.txt -RUN pip3 install -r /app/requirements.txt - -# Make port 8050 available to the world outside this container -EXPOSE 8050 - -# Define environment variable -ENV FLASK_APP app.py - -# Run the application -CMD ["python3", "-m", "utils.init_db"] -CMD ["gunicorn", "-w", "4", "--timeout", "2000", "-b", "0.0.0.0:8050", "app:server"] diff --git a/Dockerfile.cron b/Dockerfile.cron deleted file mode 100644 index 7fbb6e55..00000000 --- a/Dockerfile.cron +++ /dev/null @@ -1,21 +0,0 @@ -FROM python:3.9 -WORKDIR /app - -# Copy the current directory contents into the container at /usr/src/app -COPY . /app - -# Install cron -RUN apt-get update && apt-get -y install cron - -# Copy the crontab file from the utils directory and set it up -COPY utils/crontab_updates /etc/cron.d/crontab_updates -RUN chmod 0644 /etc/cron.d/crontab_updates -RUN crontab /etc/cron.d/crontab_updates -RUN touch /var/log/cron.log - -# Install Python dependencies -RUN pip3 install --no-cache-dir -r /app/requirements.txt - - -# Start cron and tail the log file to keep the container running -CMD cron && tail -f /var/log/cron.log diff --git a/docker-compose-old.yaml b/docker-compose-diy.yaml similarity index 74% rename from docker-compose-old.yaml rename to docker-compose-diy.yaml index 283d1d7b..79bbe5a1 100644 --- a/docker-compose-old.yaml +++ b/docker-compose-diy.yaml @@ -16,6 +16,7 @@ services: app: build: context: . + dockerfile: Dockerfile # Make sure this is the name of your Dockerfile volumes: - ./:/app ports: @@ -24,13 +25,5 @@ services: depends_on: - db - pool-ui: - image: ghcr.io/marctheshark3/sigmanaut-mining-pool-ui:main - ports: - - "8050:8050" - restart: unless-stopped - depends_on: - - db - volumes: mining_data: diff --git a/docker-compose.yaml b/docker-compose.yaml index 905e8a12..283d1d7b 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -16,7 +16,6 @@ services: app: build: context: . - dockerfile: Dockerfile.all # Make sure this is the name of your Dockerfile volumes: - ./:/app ports: @@ -25,5 +24,13 @@ services: depends_on: - db + pool-ui: + image: ghcr.io/marctheshark3/sigmanaut-mining-pool-ui:main + ports: + - "8050:8050" + restart: unless-stopped + depends_on: + - db + volumes: mining_data: