Bhuvanesh24 commited on
Commit ·
5ef46eb
1
Parent(s): a42ac38
Model Deployment
Browse files- app.py +115 -0
- model/res_1.pt +3 -0
- requirements.txt +5 -0
- src/__pycache__/model.cpython-311.pyc +0 -0
- src/model.py +51 -0
- usage.csv +182 -0
app.py
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import gradio as gr
|
| 3 |
+
import pickle
|
| 4 |
+
import numpy as np
|
| 5 |
+
from sklearn.preprocessing import StandardScaler
|
| 6 |
+
import pandas as pd
|
| 7 |
+
from scipy.stats import norm
|
| 8 |
+
from src.model import EnhancedLSTM
|
| 9 |
+
|
| 10 |
+
def simulate_risk_score(rainfall, evaporation, inflow, outflow, population, water_usage_model, district):
|
| 11 |
+
"""
|
| 12 |
+
Simulate and calculate the risk score for flood and drought, along with storage change details.
|
| 13 |
+
|
| 14 |
+
Parameters:
|
| 15 |
+
rainfall (float): Monthly rainfall in mm.
|
| 16 |
+
evaporation (float): Monthly potential evapotranspiration (PET) in mm.
|
| 17 |
+
inflow (float): Monthly reservoir inflow in m³.
|
| 18 |
+
outflow (float): Monthly reservoir outflow in m³.
|
| 19 |
+
population (int): Population of the region.
|
| 20 |
+
water_usage_model (callable): Predictive model for water usage based on population.
|
| 21 |
+
|
| 22 |
+
Returns:
|
| 23 |
+
dict: Risk scores for flood and drought, including changes in inflow, outflow, and storage.
|
| 24 |
+
"""
|
| 25 |
+
water_balance = rainfall - evaporation
|
| 26 |
+
#water_usage = 2e6
|
| 27 |
+
|
| 28 |
+
df = pd.read_csv('data/usage.csv')['District']
|
| 29 |
+
unique_districts = df.unique()
|
| 30 |
+
df = pd.DataFrame(unique_districts, columns=['District'])
|
| 31 |
+
one_hot = pd.get_dummies(df['District'], prefix='District')
|
| 32 |
+
df = pd.concat([df, one_hot], axis=1)
|
| 33 |
+
input = np.array(df[df["District"] == district].iloc[:, 1:].values.astype(int))
|
| 34 |
+
input = np.append(input, [[population]], axis=1)
|
| 35 |
+
input = torch.tensor(input, dtype=torch.float32).unsqueeze(0)
|
| 36 |
+
print(input.size())
|
| 37 |
+
|
| 38 |
+
with torch.no_grad():
|
| 39 |
+
water_usage = water_usage_model(input).sum().item() * 1e6
|
| 40 |
+
|
| 41 |
+
adjusted_inflow = inflow * (1 + water_balance / 100) # Modify inflow based on water balance (rainfall/evaporation)
|
| 42 |
+
adjusted_outflow = outflow * (1 - water_balance / 100) # Modify outflow based on water balance
|
| 43 |
+
|
| 44 |
+
# Calculate net water balance
|
| 45 |
+
net_water_balance = water_balance + (adjusted_inflow - adjusted_outflow) / 1e6
|
| 46 |
+
|
| 47 |
+
# Calculate storage change in the district
|
| 48 |
+
storage_change = adjusted_inflow - adjusted_outflow # Change in storage is the difference between inflow and outflow
|
| 49 |
+
|
| 50 |
+
# Aggregate water balance for SPEI calculation
|
| 51 |
+
aggregated_balance = [water_balance, net_water_balance]
|
| 52 |
+
mu, sigma = np.mean(aggregated_balance), np.std(aggregated_balance)
|
| 53 |
+
print(mu,sigma)
|
| 54 |
+
spei = (net_water_balance - mu) / sigma
|
| 55 |
+
|
| 56 |
+
# Define flood and drought risks based on SPEI value
|
| 57 |
+
if spei <= -2:
|
| 58 |
+
drought_risk = "High Risk"
|
| 59 |
+
flood_risk = "Low Risk"
|
| 60 |
+
elif spei >= 2:
|
| 61 |
+
drought_risk = "Low Risk"
|
| 62 |
+
flood_risk = "High Risk"
|
| 63 |
+
else:
|
| 64 |
+
drought_risk = "Moderate Risk"
|
| 65 |
+
flood_risk = "Moderate Risk"
|
| 66 |
+
|
| 67 |
+
|
| 68 |
+
drought_score = max(0, min(100, (1 - norm.cdf(spei)) * 100)) * (water_usage / 1e6)
|
| 69 |
+
flood_score = max(0, min(100, norm.cdf(spei) * 100)) * (water_usage / 1e6)
|
| 70 |
+
|
| 71 |
+
return {
|
| 72 |
+
"SPEI": spei,
|
| 73 |
+
"Drought Risk": drought_risk,
|
| 74 |
+
"Flood Risk": flood_risk,
|
| 75 |
+
"Drought Score": drought_score,
|
| 76 |
+
"Flood Score": flood_score,
|
| 77 |
+
"Adjusted Inflow": adjusted_inflow,
|
| 78 |
+
"Adjusted Outflow": adjusted_outflow,
|
| 79 |
+
"Storage Change": storage_change,
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
+
input_size = 14
|
| 83 |
+
output_size = 3
|
| 84 |
+
model = EnhancedLSTM(input_size=input_size, lstm_layer_sizes=[128]*3, linear_layer_size=[64]*6, output_size=output_size)
|
| 85 |
+
model.load_state_dict(torch.load('model/res_1.pt', map_location='cpu', weights_only=False))
|
| 86 |
+
model.eval()
|
| 87 |
+
|
| 88 |
+
|
| 89 |
+
def predict(rainfall, evaporation, inflow, outflow, population, district):
|
| 90 |
+
result = simulate_risk_score(rainfall, evaporation, inflow, outflow, population, district)
|
| 91 |
+
return result
|
| 92 |
+
|
| 93 |
+
# Gradio input-output setup
|
| 94 |
+
inputs = [
|
| 95 |
+
gr.Number(label="Rainfall (mm)"),
|
| 96 |
+
gr.Number(label="Evaporation (mm)"),
|
| 97 |
+
gr.Number(label="Inflow (m³)"),
|
| 98 |
+
gr.Number(label="Outflow (m³)"),
|
| 99 |
+
gr.Number(label="Population"),
|
| 100 |
+
gr.Textbox(label="District")
|
| 101 |
+
]
|
| 102 |
+
outputs = gr.JSON(label="Risk Assessment Results")
|
| 103 |
+
|
| 104 |
+
# Create the Gradio interface
|
| 105 |
+
gr_interface = gr.Interface(
|
| 106 |
+
fn=predict,
|
| 107 |
+
inputs=inputs,
|
| 108 |
+
outputs=outputs,
|
| 109 |
+
title="Flood and Drought Risk Assessment",
|
| 110 |
+
description="Simulate and assess flood and drought risks based on environmental and demographic factors."
|
| 111 |
+
)
|
| 112 |
+
|
| 113 |
+
# Run the interface locally for testing
|
| 114 |
+
if __name__ == "__main__":
|
| 115 |
+
gr_interface.launch()
|
model/res_1.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0ab90d8cc484a1d53fbd3a934e3a3ad6ec78e5b7ca6bd9557137f840ba6c6af1
|
| 3 |
+
size 693794
|
requirements.txt
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
torch
|
| 2 |
+
gradio
|
| 3 |
+
pandas
|
| 4 |
+
numpy
|
| 5 |
+
scipy
|
src/__pycache__/model.cpython-311.pyc
ADDED
|
Binary file (4.04 kB). View file
|
|
|
src/model.py
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
import math
|
| 4 |
+
|
| 5 |
+
class EnhancedLSTM(nn.Module):
|
| 6 |
+
def _init_(self, input_size, lstm_layer_sizes, linear_layer_size, output_size):
|
| 7 |
+
super(EnhancedLSTM, self)._init_()
|
| 8 |
+
self.input_size = input_size
|
| 9 |
+
|
| 10 |
+
self.lstm_layers = nn.ModuleList()
|
| 11 |
+
for i in range(len(lstm_layer_sizes)):
|
| 12 |
+
if i == 0:
|
| 13 |
+
self.lstm_layers.append(nn.LSTM(input_size, lstm_layer_sizes[i], batch_first=True, bidirectional=True))
|
| 14 |
+
else:
|
| 15 |
+
self.lstm_layers.append(nn.LSTM(lstm_layer_sizes[i-1]*2, lstm_layer_sizes[i], batch_first=True, bidirectional=True))
|
| 16 |
+
|
| 17 |
+
self.dropout = nn.Dropout(0.3)
|
| 18 |
+
self.fc_layers = nn.ModuleList()
|
| 19 |
+
for i in range(len(linear_layer_size)):
|
| 20 |
+
if i == 0:
|
| 21 |
+
self.fc_layers.append(nn.Linear(lstm_layer_sizes[-1]*2, linear_layer_size[i]))
|
| 22 |
+
else:
|
| 23 |
+
self.fc_layers.append(nn.Linear(linear_layer_size[i-1], linear_layer_size[i]))
|
| 24 |
+
|
| 25 |
+
self.output_layer = nn.Linear(linear_layer_size[-1], output_size)
|
| 26 |
+
self.relu = nn.ReLU()
|
| 27 |
+
|
| 28 |
+
self.apply(self.initialize_weights)
|
| 29 |
+
|
| 30 |
+
def forward(self, x):
|
| 31 |
+
out = x
|
| 32 |
+
for lstm in self.lstm_layers:
|
| 33 |
+
out, (hn, cn) = lstm(out)
|
| 34 |
+
out = self.dropout(out[:, -1, :])
|
| 35 |
+
|
| 36 |
+
for fc in self.fc_layers:
|
| 37 |
+
out = self.relu(fc(out))
|
| 38 |
+
|
| 39 |
+
out = self.output_layer(out)
|
| 40 |
+
return out
|
| 41 |
+
|
| 42 |
+
def initialize_weights(self, layer):
|
| 43 |
+
if isinstance(layer, nn.Linear):
|
| 44 |
+
nn.init.xavier_uniform_(layer.weight)
|
| 45 |
+
nn.init.zeros_(layer.bias)
|
| 46 |
+
elif isinstance(layer, nn.LSTM):
|
| 47 |
+
for name, param in layer.named_parameters():
|
| 48 |
+
if 'weight' in name:
|
| 49 |
+
nn.init.xavier_uniform_(param.data)
|
| 50 |
+
elif 'bias' in name:
|
| 51 |
+
nn.init.zeros_(param.data)
|
usage.csv
ADDED
|
@@ -0,0 +1,182 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
District,Year,Month,Rainfall,Inflow From Other States,Consumption,Irrigation,Industry,Domestic,Built-Up,Agricultural,Forest,WasteLands,Wetlands,Waterbodies
|
| 2 |
+
3,2024,1,0.05,31.55,5.81,5.07,0.00,0.74,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 3 |
+
3,2024,2,0.00,23.73,6.00,5.30,0.00,0.69,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 4 |
+
3,2024,3,0.00,23.57,7.37,6.63,0.00,0.74,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 5 |
+
3,2024,4,0.27,17.80,1.29,0.58,0.00,0.72,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 6 |
+
3,2024,5,37.80,13.08,1.22,0.47,0.00,0.74,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 7 |
+
3,2023,6,18.85,20.83,1.70,0.98,0.00,0.72,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 8 |
+
3,2024,6,57.80,25.05,1.27,0.55,0.00,0.72,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 9 |
+
3,2023,7,28.66,1294.56,1.56,0.82,0.00,0.74,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 10 |
+
3,2024,7,11.25,1703.86,1.33,0.59,0.00,0.74,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 11 |
+
3,2023,8,9.02,664.47,1.38,0.64,0.00,0.74,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 12 |
+
3,2024,8,69.72,1836.10,30.21,29.47,0.00,0.74,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 13 |
+
3,2023,9,52.39,1005.36,14.77,14.05,0.00,0.72,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 14 |
+
3,2024,9,23.15,1784.60,17.22,16.50,0.00,0.72,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 15 |
+
3,2023,10,2.99,219.07,4.90,4.16,0.00,0.74,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 16 |
+
3,2024,10,63.32,543.97,21.25,20.50,0.00,0.74,454.09,13415.04,1795.39,2387.63,0.14,1042.67
|
| 17 |
+
3,2023,11,8.42,25.45,6.07,5.35,0.00,0.72,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 18 |
+
3,2023,12,2.20,53.20,5.94,5.20,0.00,0.74,450.99,13416.96,1796.17,2391.48,0.14,1040.94
|
| 19 |
+
6,2024,1,3.41,31.55,36.70,35.38,0.62,0.71,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 20 |
+
6,2024,2,0.00,23.73,7.85,6.61,0.58,0.66,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 21 |
+
6,2024,4,0.00,17.80,1.56,0.27,0.60,0.68,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 22 |
+
6,2023,6,22.21,20.83,1.56,0.28,0.60,0.68,456.47,7701.09,4257.41,1878.00,1893.71,729.35
|
| 23 |
+
6,2024,6,43.55,25.05,1.53,0.24,0.60,0.68,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 24 |
+
6,2023,7,18.00,1294.56,6.69,5.36,0.62,0.71,456.47,7701.09,4257.41,1878.00,1893.71,729.35
|
| 25 |
+
6,2024,7,22.95,1703.86,6.71,5.38,0.62,0.71,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 26 |
+
6,2023,9,59.96,1005.36,32.18,30.90,0.60,0.68,456.47,7701.09,4257.41,1878.00,1893.71,729.35
|
| 27 |
+
6,2024,9,23.62,1784.60,11.18,9.89,0.60,0.68,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 28 |
+
6,2023,10,12.22,219.07,30.08,28.76,0.62,0.71,456.47,7701.09,4257.41,1878.00,1893.71,729.35
|
| 29 |
+
6,2024,10,52.60,543.97,6.62,5.30,0.62,0.71,461.52,7704.05,4257.10,1870.90,1887.44,729.88
|
| 30 |
+
6,2023,12,30.68,53.20,33.18,31.85,0.62,0.71,456.47,7701.09,4257.41,1878.00,1893.71,729.35
|
| 31 |
+
7,2024,2,0.00,23.73,32.27,30.97,0.51,0.80,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 32 |
+
7,2024,3,1.16,23.57,33.05,31.65,0.54,0.85,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 33 |
+
7,2024,4,0.00,17.80,21.42,20.07,0.53,0.82,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 34 |
+
7,2024,5,432.43,13.08,40.39,27.09,4.96,8.34,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 35 |
+
7,2023,6,379.46,20.83,82.45,69.58,4.80,8.07,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 36 |
+
7,2024,6,905.03,25.05,66.46,53.60,4.80,8.07,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 37 |
+
7,2023,7,981.17,1294.56,200.71,187.41,4.96,8.34,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 38 |
+
7,2024,7,1003.14,1703.86,135.80,122.50,4.96,8.34,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 39 |
+
7,2023,8,445.45,664.47,301.07,287.77,4.96,8.34,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 40 |
+
7,2024,8,22.45,1836.10,37.50,36.11,0.54,0.85,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 41 |
+
7,2023,9,14.33,1005.36,42.73,41.38,0.53,0.82,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 42 |
+
7,2024,9,19.83,1784.60,30.69,29.34,0.53,0.82,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 43 |
+
7,2023,10,0.98,219.07,47.39,45.99,0.54,0.85,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 44 |
+
7,2024,10,10.64,543.97,36.21,34.82,0.54,0.85,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 45 |
+
7,2023,11,0.98,219.07,47.39,45.99,0.54,0.85,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 46 |
+
7,2024,11,10.64,543.97,36.21,34.81,0.54,0.85,524.71,6198.63,4974.02,279.15,146.58,861.26
|
| 47 |
+
7,2023,12,21.15,53.20,24.50,23.10,0.54,0.85,523.18,6198.07,4975.17,279.72,146.84,861.29
|
| 48 |
+
9,2024,1,0.01,31.55,36.25,35.41,0.04,0.80,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 49 |
+
9,2024,2,0.00,23.73,11.33,10.54,0.04,0.75,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 50 |
+
9,2024,4,0.16,17.80,9.04,8.23,0.04,0.78,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 51 |
+
9,2023,6,9.74,20.83,22.13,21.31,0.04,0.78,558.97,8235.02,1565.92,486.21,26.17,524.49
|
| 52 |
+
9,2024,6,15.39,25.05,0.82,0.00,0.04,0.78,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 53 |
+
9,2023,7,26.61,1294.56,32.76,31.92,0.04,0.80,558.97,8235.02,1565.92,486.21,26.17,524.49
|
| 54 |
+
9,2024,7,20.15,1703.86,9.93,9.09,0.04,0.80,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 55 |
+
9,2023,9,17.22,1005.36,15.65,14.84,0.04,0.78,558.97,8235.02,1565.92,486.21,26.17,524.49
|
| 56 |
+
9,2024,9,25.95,1784.60,59.74,58.93,0.04,0.78,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 57 |
+
9,2023,10,2.21,219.07,17.48,16.64,0.04,0.80,558.97,8235.02,1565.92,486.21,26.17,524.49
|
| 58 |
+
9,2024,10,13.83,543.97,74.47,73.63,0.04,0.80,561.89,8236.04,1566.24,483.46,25.24,524.56
|
| 59 |
+
9,2023,12,14.36,53.20,16.76,15.92,0.04,0.80,558.97,8235.02,1565.92,486.21,26.17,524.49
|
| 60 |
+
13,2024,1,12.61,31.55,222.34,209.03,4.96,8.34,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 61 |
+
13,2024,2,0.53,23.73,147.59,135.15,4.64,7.80,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 62 |
+
13,2024,4,13.86,17.80,77.10,64.23,4.80,8.07,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 63 |
+
13,2023,6,379.46,20.83,82.45,69.58,4.80,8.07,581.22,6673.35,629.02,142.95,208.68,516.70
|
| 64 |
+
13,2024,6,905.03,25.05,69.15,56.28,4.80,8.07,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 65 |
+
13,2023,7,981.17,1294.56,186.62,173.31,4.96,8.34,581.22,6673.35,629.02,142.95,208.68,516.70
|
| 66 |
+
13,2024,7,1003.14,1703.86,380.30,367.00,4.96,8.34,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 67 |
+
13,2023,9,29.87,1005.36,26.41,25.22,0.48,0.71,581.22,6673.35,629.02,142.95,208.68,516.70
|
| 68 |
+
13,2024,9,35.20,1784.60,23.82,22.63,0.48,0.71,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 69 |
+
13,2023,10,6.26,219.07,27.88,26.66,0.49,0.74,581.22,6673.35,629.02,142.95,208.68,516.70
|
| 70 |
+
13,2024,10,22.13,543.97,38.47,37.25,0.49,0.74,587.19,6674.47,629.62,142.24,203.33,517.15
|
| 71 |
+
13,2023,12,810.60,53.20,156.74,143.44,4.96,8.34,581.22,6673.35,629.02,142.95,208.68,516.70
|
| 72 |
+
10,2024,1,0.00,31.55,14.15,12.98,0.47,0.70,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 73 |
+
10,2024,2,0.01,23.73,11.64,10.55,0.44,0.65,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 74 |
+
10,2024,3,0.00,23.57,13.78,12.62,0.47,0.70,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 75 |
+
10,2024,4,0.70,17.80,6.69,5.57,0.45,0.68,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 76 |
+
10,2024,5,27.34,13.08,5.61,4.45,0.47,0.70,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 77 |
+
10,2023,6,17.01,20.83,3.05,1.92,0.45,0.68,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 78 |
+
10,2024,6,41.68,25.05,6.84,5.71,0.45,0.68,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 79 |
+
10,2023,7,39.73,1294.56,55.76,54.59,0.47,0.70,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 80 |
+
10,2024,7,18.22,1703.86,20.05,18.89,0.47,0.70,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 81 |
+
10,2023,8,8.81,664.47,103.51,102.34,0.47,0.70,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 82 |
+
10,2024,8,52.01,1836.10,170.12,168.95,0.47,0.70,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 83 |
+
10,2023,9,28.98,1005.36,40.38,39.25,0.45,0.68,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 84 |
+
10,2024,9,31.10,1784.60,138.22,137.09,0.45,0.68,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 85 |
+
10,2023,10,0.38,219.07,22.39,21.23,0.47,0.70,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 86 |
+
10,2024,10,25.13,543.97,282.63,281.47,0.47,0.70,515.14,11464.07,2996.96,1927.41,2013.32,714.67
|
| 87 |
+
10,2023,11,8.77,25.45,21.83,20.70,0.45,0.68,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 88 |
+
10,2023,12,1.08,53.20,15.23,14.06,0.47,0.70,514.07,11461.12,2997.05,1928.68,2010.04,717.21
|
| 89 |
+
18,2024,1,12.61,31.55,209.03,209.03,0.00,0.00,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 90 |
+
18,2024,2,0.53,23.73,135.15,135.15,0.00,0.00,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 91 |
+
18,2024,4,13.86,17.80,64.23,64.23,0.00,0.00,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 92 |
+
18,2023,6,379.46,20.83,69.58,69.58,0.00,0.00,393.84,10291.49,4202.16,1781.04,73.61,852.98
|
| 93 |
+
18,2024,6,905.03,25.05,56.28,56.28,0.00,0.00,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 94 |
+
18,2023,7,981.17,1294.56,173.31,173.31,0.00,0.00,393.84,10291.49,4202.16,1781.04,73.61,852.98
|
| 95 |
+
18,2024,7,1003.14,1703.86,367.00,367.00,0.00,0.00,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 96 |
+
18,2023,9,78.82,1005.36,9.49,7.83,1.06,0.60,393.84,10291.49,4202.16,1781.04,73.61,852.98
|
| 97 |
+
18,2024,9,76.47,1784.60,10.64,8.98,1.06,0.60,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 98 |
+
18,2023,10,5.72,219.07,5.91,4.20,1.10,0.62,393.84,10291.49,4202.16,1781.04,73.61,852.98
|
| 99 |
+
18,2024,10,124.74,543.97,7.23,5.52,1.10,0.62,397.14,10296.10,4200.84,1773.96,73.62,854.05
|
| 100 |
+
18,2023,12,810.60,53.20,143.44,143.44,0.00,0.00,393.84,10291.49,4202.16,1781.04,73.61,852.98
|
| 101 |
+
20,2024,1,0.21,31.55,17.61,16.92,0.19,0.50,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 102 |
+
20,2024,2,0.00,23.73,14.21,13.56,0.17,0.47,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 103 |
+
20,2024,4,0.00,17.80,2.83,2.16,0.18,0.49,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 104 |
+
20,2023,6,9.39,20.83,21.19,20.52,0.18,0.49,468.30,7162.23,2167.69,1375.00,596.18,1442.32
|
| 105 |
+
20,2024,6,32.12,25.05,1.74,1.07,0.18,0.49,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 106 |
+
20,2023,7,26.87,1294.56,20.53,19.84,0.19,0.50,468.30,7162.23,2167.69,1375.00,596.18,1442.32
|
| 107 |
+
20,2024,7,45.01,1703.86,6.90,6.21,0.19,0.50,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 108 |
+
20,2023,9,33.27,1005.36,18.64,17.97,0.18,0.49,468.30,7162.23,2167.69,1375.00,596.18,1442.32
|
| 109 |
+
20,2024,9,32.18,1784.60,34.28,33.61,0.18,0.49,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 110 |
+
20,2023,10,5.70,219.07,8.03,7.34,0.19,0.50,468.30,7162.23,2167.69,1375.00,596.18,1442.32
|
| 111 |
+
20,2024,10,135.20,543.97,37.85,37.16,0.19,0.50,471.35,7163.89,2167.41,1371.48,595.47,1442.39
|
| 112 |
+
20,2023,12,105.79,53.20,11.93,11.24,0.19,0.50,468.30,7162.23,2167.69,1375.00,596.18,1442.32
|
| 113 |
+
21,2024,1,0.66,31.55,4.94,4.36,0.11,0.46,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 114 |
+
21,2024,2,0.18,23.73,2.95,2.41,0.10,0.43,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 115 |
+
21,2024,4,0.58,17.80,1.25,0.69,0.11,0.45,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 116 |
+
21,2023,6,10.46,20.83,1.81,1.25,0.11,0.45,163.10,4155.38,631.95,482.83,72.51,339.12
|
| 117 |
+
21,2024,6,19.31,25.05,0.56,0.00,0.11,0.45,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 118 |
+
21,2023,7,47.91,1294.56,6.90,6.32,0.11,0.46,163.10,4155.38,631.95,482.83,72.51,339.12
|
| 119 |
+
21,2024,7,39.32,1703.86,1.41,0.84,0.11,0.46,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 120 |
+
21,2023,9,29.27,1005.36,23.00,22.44,0.11,0.45,163.10,4155.38,631.95,482.83,72.51,339.12
|
| 121 |
+
21,2024,9,47.49,1784.60,16.21,15.65,0.11,0.45,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 122 |
+
21,2023,10,1.22,219.07,10.62,10.04,0.11,0.46,163.10,4155.38,631.95,482.83,72.51,339.12
|
| 123 |
+
21,2024,10,7.87,543.97,13.55,12.98,0.11,0.46,164.35,4157.19,630.65,481.68,72.09,339.11
|
| 124 |
+
21,2023,12,6.35,53.20,4.61,4.03,0.11,0.46,163.10,4155.38,631.95,482.83,72.51,339.12
|
| 125 |
+
23,2024,1,0.01,31.55,2.38,1.18,0.51,0.69,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 126 |
+
23,2024,2,0.00,23.73,3.25,2.13,0.48,0.65,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 127 |
+
23,2024,4,0.10,17.80,1.73,0.57,0.50,0.67,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 128 |
+
23,2023,6,1.15,20.83,1.64,0.48,0.50,0.67,501.36,4739.90,4437.59,1465.69,38.86,340.31
|
| 129 |
+
23,2024,6,6.23,25.05,1.61,0.44,0.50,0.67,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 130 |
+
23,2023,7,10.86,1294.56,1.90,0.70,0.51,0.69,501.36,4739.90,4437.59,1465.69,38.86,340.31
|
| 131 |
+
23,2024,7,8.11,1703.86,1.83,0.63,0.51,0.69,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 132 |
+
23,2023,9,4.95,1005.36,4.77,3.60,0.50,0.67,501.36,4739.90,4437.59,1465.69,38.86,340.31
|
| 133 |
+
23,2024,9,10.56,1784.60,4.09,2.93,0.50,0.67,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 134 |
+
23,2023,10,0.50,219.07,4.47,3.26,0.51,0.69,501.36,4739.90,4437.59,1465.69,38.86,340.31
|
| 135 |
+
23,2024,10,2.92,543.97,7.37,6.16,0.51,0.69,503.03,4740.40,4437.49,1463.91,38.53,340.46
|
| 136 |
+
23,2023,12,5.77,53.20,3.05,1.85,0.51,0.69,501.36,4739.90,4437.59,1465.69,38.86,340.31
|
| 137 |
+
24,2024,1,0.04,31.55,3.41,2.93,0.10,0.39,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 138 |
+
24,2024,2,0.01,23.73,2.73,2.28,0.09,0.36,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 139 |
+
24,2024,3,4.01,23.57,5.23,4.74,0.10,0.39,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 140 |
+
24,2024,4,0.35,17.80,3.48,3.01,0.10,0.37,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 141 |
+
24,2024,5,6.64,13.08,2.80,2.31,0.10,0.39,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 142 |
+
24,2023,6,7.12,20.83,1.34,0.87,0.10,0.37,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 143 |
+
24,2024,6,26.75,25.05,3.79,3.31,0.10,0.37,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 144 |
+
24,2023,7,44.37,1294.56,3.88,3.39,0.10,0.39,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 145 |
+
24,2024,7,33.69,1703.86,5.80,5.32,0.10,0.39,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 146 |
+
24,2023,8,21.94,664.47,7.33,6.85,0.10,0.39,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 147 |
+
24,2024,8,25.23,1836.10,10.85,10.36,0.10,0.39,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 148 |
+
24,2023,9,26.04,1005.36,10.05,9.58,0.10,0.37,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 149 |
+
24,2024,9,39.12,1784.60,9.80,9.33,0.10,0.37,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 150 |
+
24,2023,10,1.35,219.07,7.08,6.59,0.10,0.39,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 151 |
+
24,2024,10,6.00,543.97,12.92,12.44,0.10,0.39,228.48,4117.09,1066.95,410.62,2.03,312.87
|
| 152 |
+
24,2023,11,1.51,25.45,4.85,4.38,0.10,0.37,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 153 |
+
24,2023,12,14.91,53.20,3.53,3.04,0.10,0.39,223.25,4115.91,1070.38,412.61,2.01,312.50
|
| 154 |
+
25,2024,1,0.00,31.55,1.91,1.17,0.08,0.66,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 155 |
+
25,2024,2,0.00,23.73,7.80,7.11,0.07,0.61,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 156 |
+
25,2024,3,0.48,23.57,19.33,18.59,0.08,0.66,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 157 |
+
25,2024,4,0.00,17.80,12.54,11.83,0.08,0.64,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 158 |
+
25,2024,5,5.48,13.08,9.72,8.99,0.08,0.66,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 159 |
+
25,2023,6,8.65,20.83,0.71,0.00,0.08,0.64,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 160 |
+
25,2024,6,14.33,25.05,11.68,10.97,0.08,0.64,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 161 |
+
25,2023,7,14.96,1294.56,1.13,0.40,0.08,0.66,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 162 |
+
25,2024,7,28.38,1703.86,12.87,12.13,0.08,0.66,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 163 |
+
25,2023,8,6.16,664.47,2.24,1.51,0.08,0.66,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 164 |
+
25,2024,8,21.09,1836.10,12.01,11.27,0.08,0.66,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 165 |
+
25,2023,9,15.87,1005.36,2.24,1.52,0.08,0.64,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 166 |
+
25,2024,9,17.47,1784.60,5.11,4.40,0.08,0.64,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 167 |
+
25,2023,10,2.13,219.07,2.12,1.39,0.08,0.66,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 168 |
+
25,2024,10,14.81,543.97,2.67,1.93,0.08,0.66,444.64,6173.09,1330.13,83.18,150.36,315.58
|
| 169 |
+
25,2023,11,4.93,25.45,1.36,0.65,0.08,0.64,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 170 |
+
25,2023,12,23.79,53.20,1.18,0.45,0.08,0.66,442.79,6171.81,1332.09,83.54,151.50,315.05
|
| 171 |
+
26,2024,1,0.33,31.55,56.67,56.19,0.00,0.48,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 172 |
+
26,2024,2,0.00,23.73,34.10,33.65,0.00,0.45,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 173 |
+
26,2024,4,0.19,17.80,3.43,2.96,0.00,0.47,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 174 |
+
26,2023,6,12.66,20.83,2.78,2.31,0.00,0.47,367.57,6559.05,4917.94,2608.05,3.83,899.31
|
| 175 |
+
26,2024,6,52.06,25.05,4.35,3.89,0.00,0.47,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 176 |
+
26,2023,7,27.87,1294.56,4.93,4.45,0.00,0.48,367.57,6559.05,4917.94,2608.05,3.83,899.31
|
| 177 |
+
26,2024,7,25.34,1703.86,5.59,5.11,0.00,0.48,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 178 |
+
26,2023,9,57.31,1005.36,15.57,15.10,0.00,0.47,367.57,6559.05,4917.94,2608.05,3.83,899.31
|
| 179 |
+
26,2024,9,36.86,1784.60,30.06,29.60,0.00,0.47,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 180 |
+
26,2023,10,2.09,219.07,8.24,7.75,0.00,0.48,367.57,6559.05,4917.94,2608.05,3.83,899.31
|
| 181 |
+
26,2024,10,69.88,543.97,22.00,21.52,0.00,0.48,369.39,6560.00,4917.37,2605.02,3.83,900.29
|
| 182 |
+
26,2023,12,29.68,53.20,32.16,31.68,0.00,0.48,367.57,6559.05,4917.94,2608.05,3.83,899.31
|