Spaces:
Sleeping
Sleeping
Commit
·
6e09d82
1
Parent(s):
d67815a
feat: generated files
Browse files- app.py +129 -27
- clientes_relevantes.csv +684 -0
- productos.csv +0 -0
app.py
CHANGED
|
@@ -3,6 +3,8 @@ import pandas as pd
|
|
| 3 |
import plotly.express as px
|
| 4 |
import matplotlib.pyplot as plt
|
| 5 |
import numpy as np
|
|
|
|
|
|
|
| 6 |
|
| 7 |
# Page configuration
|
| 8 |
st.set_page_config(page_title="Customer Insights App", page_icon=":bar_chart:")
|
|
@@ -16,6 +18,11 @@ euros_proveedor = pd.read_csv("euros_proveedor.csv", sep=',')
|
|
| 16 |
df['CLIENTE'] = df['CLIENTE'].astype(str)
|
| 17 |
nombres_proveedores['codigo'] = nombres_proveedores['codigo'].astype(str)
|
| 18 |
euros_proveedor['CLIENTE'] = euros_proveedor['CLIENTE'].astype(str)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
|
| 20 |
# Convert all columns except 'CLIENTE' to float in euros_proveedor
|
| 21 |
for col in euros_proveedor.columns:
|
|
@@ -87,7 +94,7 @@ st.markdown("""
|
|
| 87 |
""")
|
| 88 |
|
| 89 |
# Navigation menu
|
| 90 |
-
page = st.selectbox("Select the tool you want to use", ["", "Customer Analysis", "
|
| 91 |
|
| 92 |
# Home Page
|
| 93 |
if page == "":
|
|
@@ -188,11 +195,14 @@ elif page == "Customer Analysis":
|
|
| 188 |
st.warning(f"No data found for customer {customer_code}. Please check the code.")
|
| 189 |
|
| 190 |
# Customer Recommendations Page
|
| 191 |
-
elif page == "
|
| 192 |
-
st.title("
|
| 193 |
-
st.markdown("""Get tailored product recommendations for your customers based on their purchasing basket.""")
|
| 194 |
|
| 195 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 196 |
partial_code = st.text_input("Enter part of Customer Code for Recommendations (or leave empty to see all)")
|
| 197 |
if partial_code:
|
| 198 |
filtered_customers = df[df['CLIENTE'].str.contains(partial_code)]
|
|
@@ -201,30 +211,122 @@ elif page == "Basket Recommendations":
|
|
| 201 |
customer_list = filtered_customers['CLIENTE'].unique()
|
| 202 |
customer_code = st.selectbox("Select Customer Code for Recommendations", customer_list)
|
| 203 |
|
| 204 |
-
#
|
| 205 |
-
|
| 206 |
-
|
|
|
|
|
|
|
| 207 |
|
| 208 |
-
#
|
| 209 |
-
|
| 210 |
-
|
| 211 |
-
|
| 212 |
-
for i in range(num_lines):
|
| 213 |
-
col1, col2 = st.columns(2)
|
| 214 |
-
with col1:
|
| 215 |
-
article_code = st.text_input(f"Enter Article Code for Line {i + 1}")
|
| 216 |
-
with col2:
|
| 217 |
-
units = st.number_input(f"Enter Units for Line {i + 1}", min_value=1, value=1, step=1)
|
| 218 |
|
| 219 |
-
|
| 220 |
-
|
| 221 |
-
basket_items.append((article_code, units))
|
| 222 |
|
| 223 |
-
# Generate the concatenated string
|
| 224 |
-
input_cesta = ''.join([f"{code * units}" for code, units in basket_items])
|
| 225 |
|
| 226 |
-
#
|
| 227 |
-
|
| 228 |
|
| 229 |
-
#
|
| 230 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
import plotly.express as px
|
| 4 |
import matplotlib.pyplot as plt
|
| 5 |
import numpy as np
|
| 6 |
+
from sklearn.feature_extraction.text import TfidfVectorizer
|
| 7 |
+
from sklearn.metrics.pairwise import cosine_similarity
|
| 8 |
|
| 9 |
# Page configuration
|
| 10 |
st.set_page_config(page_title="Customer Insights App", page_icon=":bar_chart:")
|
|
|
|
| 18 |
df['CLIENTE'] = df['CLIENTE'].astype(str)
|
| 19 |
nombres_proveedores['codigo'] = nombres_proveedores['codigo'].astype(str)
|
| 20 |
euros_proveedor['CLIENTE'] = euros_proveedor['CLIENTE'].astype(str)
|
| 21 |
+
fieles_df = pd.read_csv("clientes_relevantes.csv")
|
| 22 |
+
# Cargo csv del histórico de cestas
|
| 23 |
+
cestas = pd.read_csv("cestas.csv")
|
| 24 |
+
# Cargo csv de productos y descripcion
|
| 25 |
+
productos = pd.read_csv("productos.csv")
|
| 26 |
|
| 27 |
# Convert all columns except 'CLIENTE' to float in euros_proveedor
|
| 28 |
for col in euros_proveedor.columns:
|
|
|
|
| 94 |
""")
|
| 95 |
|
| 96 |
# Navigation menu
|
| 97 |
+
page = st.selectbox("Select the tool you want to use", ["", "Customer Analysis", "Articles Recommendations"])
|
| 98 |
|
| 99 |
# Home Page
|
| 100 |
if page == "":
|
|
|
|
| 195 |
st.warning(f"No data found for customer {customer_code}. Please check the code.")
|
| 196 |
|
| 197 |
# Customer Recommendations Page
|
| 198 |
+
elif page == "Articles Recommendations":
|
| 199 |
+
st.title("Articles Recommendations")
|
|
|
|
| 200 |
|
| 201 |
+
st.markdown("""
|
| 202 |
+
Get tailored recommendations for your customers based on their basket.
|
| 203 |
+
""")
|
| 204 |
+
|
| 205 |
+
# Campo input para cliente
|
| 206 |
partial_code = st.text_input("Enter part of Customer Code for Recommendations (or leave empty to see all)")
|
| 207 |
if partial_code:
|
| 208 |
filtered_customers = df[df['CLIENTE'].str.contains(partial_code)]
|
|
|
|
| 211 |
customer_list = filtered_customers['CLIENTE'].unique()
|
| 212 |
customer_code = st.selectbox("Select Customer Code for Recommendations", customer_list)
|
| 213 |
|
| 214 |
+
# DEfinicion de la funcion recomienda
|
| 215 |
+
def recomienda(new_basket):
|
| 216 |
+
# Calcular la matriz TF-IDF
|
| 217 |
+
tfidf = TfidfVectorizer()
|
| 218 |
+
tfidf_matrix = tfidf.fit_transform(cestas['Cestas'])
|
| 219 |
|
| 220 |
+
# Convertir la nueva cesta en formato TF-IDF
|
| 221 |
+
new_basket_str = ' '.join(new_basket)
|
| 222 |
+
new_basket_tfidf = tfidf.transform([new_basket_str])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 223 |
|
| 224 |
+
# Comparar la nueva cesta con las anteriores
|
| 225 |
+
similarities = cosine_similarity(new_basket_tfidf, tfidf_matrix)
|
|
|
|
| 226 |
|
|
|
|
|
|
|
| 227 |
|
| 228 |
+
# Obtener los índices de las cestas más similares
|
| 229 |
+
similar_indices = similarities.argsort()[0][-3:] # Las 3 más similares
|
| 230 |
|
| 231 |
+
# Crear un diccionario para contar las recomendaciones
|
| 232 |
+
recommendations_count = {}
|
| 233 |
+
total_similarity = 0
|
| 234 |
+
|
| 235 |
+
# Recomendar productos de cestas similares
|
| 236 |
+
for idx in similar_indices:
|
| 237 |
+
sim_score = similarities[0][idx]
|
| 238 |
+
total_similarity += sim_score
|
| 239 |
+
products = cestas.iloc[idx]['Cestas'].split()
|
| 240 |
+
|
| 241 |
+
for product in products:
|
| 242 |
+
if product.strip() not in new_basket: # Evitar recomendar lo que ya está en la cesta
|
| 243 |
+
if product.strip() in recommendations_count:
|
| 244 |
+
recommendations_count[product.strip()] += sim_score
|
| 245 |
+
else:
|
| 246 |
+
recommendations_count[product.strip()] = sim_score
|
| 247 |
+
|
| 248 |
+
# Calcular la probabilidad relativa de cada producto recomendado
|
| 249 |
+
recommendations_with_prob = []
|
| 250 |
+
if total_similarity > 0: # Verificar que total_similarity no sea cero
|
| 251 |
+
recommendations_with_prob = [(product, score / total_similarity) for product, score in recommendations_count.items()]
|
| 252 |
+
else:
|
| 253 |
+
print("No se encontraron similitudes suficientes para calcular probabilidades.")
|
| 254 |
+
|
| 255 |
+
recommendations_with_prob.sort(key=lambda x: x[1], reverse=True) # Ordenar por puntuación
|
| 256 |
+
|
| 257 |
+
# Crear un nuevo DataFrame para almacenar las recomendaciones con descripciones y probabilidades
|
| 258 |
+
recommendations_df = pd.DataFrame(columns=['ARTICULO', 'DESCRIPCION', 'PROBABILIDAD'])
|
| 259 |
+
|
| 260 |
+
# Agregar las recomendaciones al DataFrame usando pd.concat
|
| 261 |
+
for product, prob in recommendations_with_prob:
|
| 262 |
+
# Buscar la descripción en el DataFrame de productos
|
| 263 |
+
description = productos.loc[productos['ARTICULO'] == product, 'DESCRIPCION']
|
| 264 |
+
if not description.empty:
|
| 265 |
+
# Crear un nuevo DataFrame temporal para la recomendación
|
| 266 |
+
temp_df = pd.DataFrame({
|
| 267 |
+
'ARTICULO': [product],
|
| 268 |
+
'DESCRIPCION': [description.values[0]], # Obtener el primer valor encontrado
|
| 269 |
+
'PROBABILIDAD': [prob]
|
| 270 |
+
})
|
| 271 |
+
# Concatenar el DataFrame temporal al DataFrame de recomendaciones
|
| 272 |
+
recommendations_df = pd.concat([recommendations_df, temp_df], ignore_index=True)
|
| 273 |
+
|
| 274 |
+
return recommendations_df
|
| 275 |
+
|
| 276 |
+
# Comprobar si el cliente está en el CSV de fieles
|
| 277 |
+
|
| 278 |
+
is_fiel = customer_code in fieles_df['CLIENTE'].astype(str).values
|
| 279 |
+
|
| 280 |
+
if customer_code:
|
| 281 |
+
if is_fiel:
|
| 282 |
+
st.write(f"### Customer {customer_code} is a loyal customer.")
|
| 283 |
+
option = st.selectbox("Select Recommendation Type", ["Select an option", "By Purchase History", "By Current Basket"])
|
| 284 |
+
|
| 285 |
+
if option == "By Purchase History":
|
| 286 |
+
st.warning("Option not available... aún")
|
| 287 |
+
elif option == "By Current Basket":
|
| 288 |
+
|
| 289 |
+
st.write("Enter the items in the basket:")
|
| 290 |
+
|
| 291 |
+
# Input para los artículos y unidades
|
| 292 |
+
items = st.text_input("Enter items (comma-separated):").split(',')
|
| 293 |
+
quantities = st.text_input("Enter quantities (comma-separated):").split(',')
|
| 294 |
+
|
| 295 |
+
# Crear una lista de artículos basada en la entrada
|
| 296 |
+
new_basket = [item.strip() for item in items]
|
| 297 |
+
|
| 298 |
+
# Asegurarse de que las longitudes de artículos y cantidades coincidan
|
| 299 |
+
if len(new_basket) == len(quantities):
|
| 300 |
+
# Procesar la lista para recomendar
|
| 301 |
+
recommendations_df = recomienda(new_basket)
|
| 302 |
+
|
| 303 |
+
if not recommendations_df.empty:
|
| 304 |
+
st.write("### Recommendations based on the current basket:")
|
| 305 |
+
st.dataframe(recommendations_df)
|
| 306 |
+
else:
|
| 307 |
+
st.warning("No recommendations found for the provided basket.")
|
| 308 |
+
else:
|
| 309 |
+
st.warning("The number of items must match the number of quantities.")
|
| 310 |
+
else:
|
| 311 |
+
st.write(f"### Customer {customer_code} is not a loyal customer.")
|
| 312 |
+
st.write("Recommendation based on the basket. Please enter the items:")
|
| 313 |
+
|
| 314 |
+
# Input para los artículos y unidades
|
| 315 |
+
items = st.text_input("Enter items (comma-separated):").split(',')
|
| 316 |
+
quantities = st.text_input("Enter quantities (comma-separated):").split(',')
|
| 317 |
+
|
| 318 |
+
# Crear una lista de artículos basada en la entrada
|
| 319 |
+
new_basket = [item.strip() for item in items]
|
| 320 |
+
|
| 321 |
+
# Asegurarse de que las longitudes de artículos y cantidades coincidan
|
| 322 |
+
if len(new_basket) == len(quantities):
|
| 323 |
+
# Procesar la lista para recomendar
|
| 324 |
+
recommendations_df = recomienda(new_basket)
|
| 325 |
+
|
| 326 |
+
if not recommendations_df.empty:
|
| 327 |
+
st.write("### Recommendations based on the current basket:")
|
| 328 |
+
st.dataframe(recommendations_df)
|
| 329 |
+
else:
|
| 330 |
+
st.warning("No recommendations found for the provided basket.")
|
| 331 |
+
else:
|
| 332 |
+
st.warning("The number of items must match the number of quantities.")
|
clientes_relevantes.csv
ADDED
|
@@ -0,0 +1,684 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
,Cliente
|
| 2 |
+
0,1019
|
| 3 |
+
5,1161
|
| 4 |
+
6,1169
|
| 5 |
+
7,1177
|
| 6 |
+
8,1193
|
| 7 |
+
11,1218
|
| 8 |
+
12,1232
|
| 9 |
+
16,1348
|
| 10 |
+
19,1381
|
| 11 |
+
20,1403
|
| 12 |
+
22,1421
|
| 13 |
+
23,1447
|
| 14 |
+
25,1486
|
| 15 |
+
28,1523
|
| 16 |
+
30,1575
|
| 17 |
+
32,1597
|
| 18 |
+
35,1630
|
| 19 |
+
39,1665
|
| 20 |
+
41,1692
|
| 21 |
+
43,1853
|
| 22 |
+
47,2098
|
| 23 |
+
49,2132
|
| 24 |
+
52,2190
|
| 25 |
+
53,2192
|
| 26 |
+
54,2204
|
| 27 |
+
55,2247
|
| 28 |
+
56,2252
|
| 29 |
+
57,2267
|
| 30 |
+
59,2279
|
| 31 |
+
60,2308
|
| 32 |
+
62,2484
|
| 33 |
+
63,3001
|
| 34 |
+
64,3003
|
| 35 |
+
65,3016
|
| 36 |
+
66,4350
|
| 37 |
+
67,5018
|
| 38 |
+
68,5022
|
| 39 |
+
69,5037
|
| 40 |
+
70,5295
|
| 41 |
+
72,6000
|
| 42 |
+
74,6062
|
| 43 |
+
75,6077
|
| 44 |
+
76,6079
|
| 45 |
+
77,6089
|
| 46 |
+
78,6110
|
| 47 |
+
87,6503
|
| 48 |
+
88,6506
|
| 49 |
+
90,6515
|
| 50 |
+
94,6559
|
| 51 |
+
96,6588
|
| 52 |
+
97,6593
|
| 53 |
+
100,7034
|
| 54 |
+
101,7035
|
| 55 |
+
103,7073
|
| 56 |
+
105,7136
|
| 57 |
+
106,7141
|
| 58 |
+
107,7179
|
| 59 |
+
108,7219
|
| 60 |
+
109,7243
|
| 61 |
+
110,7335
|
| 62 |
+
111,7340
|
| 63 |
+
112,7451
|
| 64 |
+
118,7593
|
| 65 |
+
121,7622
|
| 66 |
+
122,7629
|
| 67 |
+
123,7667
|
| 68 |
+
124,7701
|
| 69 |
+
125,7702
|
| 70 |
+
127,7763
|
| 71 |
+
129,7791
|
| 72 |
+
131,7806
|
| 73 |
+
132,8060
|
| 74 |
+
133,8063
|
| 75 |
+
136,8222
|
| 76 |
+
137,8227
|
| 77 |
+
139,8955
|
| 78 |
+
141,10018
|
| 79 |
+
145,12197
|
| 80 |
+
147,12566
|
| 81 |
+
149,12595
|
| 82 |
+
150,12612
|
| 83 |
+
151,13244
|
| 84 |
+
152,14023
|
| 85 |
+
153,14030
|
| 86 |
+
155,14064
|
| 87 |
+
156,14079
|
| 88 |
+
158,14104
|
| 89 |
+
159,14165
|
| 90 |
+
161,14177
|
| 91 |
+
162,14182
|
| 92 |
+
166,78020
|
| 93 |
+
170,78028
|
| 94 |
+
173,78050
|
| 95 |
+
174,78065
|
| 96 |
+
181,78102
|
| 97 |
+
184,78116
|
| 98 |
+
185,78122
|
| 99 |
+
187,78129
|
| 100 |
+
189,78155
|
| 101 |
+
191,78177
|
| 102 |
+
193,78195
|
| 103 |
+
195,78208
|
| 104 |
+
196,78218
|
| 105 |
+
198,78222
|
| 106 |
+
200,78229
|
| 107 |
+
202,78248
|
| 108 |
+
203,78253
|
| 109 |
+
205,78272
|
| 110 |
+
206,78276
|
| 111 |
+
207,78283
|
| 112 |
+
210,78300
|
| 113 |
+
213,78332
|
| 114 |
+
214,78335
|
| 115 |
+
222,78387
|
| 116 |
+
224,78398
|
| 117 |
+
225,78401
|
| 118 |
+
231,78450
|
| 119 |
+
232,78453
|
| 120 |
+
233,78463
|
| 121 |
+
234,78469
|
| 122 |
+
237,78486
|
| 123 |
+
239,78491
|
| 124 |
+
244,78539
|
| 125 |
+
252,78584
|
| 126 |
+
253,78585
|
| 127 |
+
256,78591
|
| 128 |
+
257,78601
|
| 129 |
+
260,78611
|
| 130 |
+
267,78664
|
| 131 |
+
270,78673
|
| 132 |
+
271,78679
|
| 133 |
+
276,78704
|
| 134 |
+
281,78722
|
| 135 |
+
283,78725
|
| 136 |
+
291,78739
|
| 137 |
+
294,78743
|
| 138 |
+
295,78747
|
| 139 |
+
296,78748
|
| 140 |
+
299,78756
|
| 141 |
+
300,78762
|
| 142 |
+
301,78763
|
| 143 |
+
304,78773
|
| 144 |
+
309,78796
|
| 145 |
+
310,78799
|
| 146 |
+
311,78802
|
| 147 |
+
312,78803
|
| 148 |
+
315,78817
|
| 149 |
+
317,78827
|
| 150 |
+
318,78830
|
| 151 |
+
319,78832
|
| 152 |
+
326,78858
|
| 153 |
+
327,78868
|
| 154 |
+
328,78872
|
| 155 |
+
329,78879
|
| 156 |
+
334,78901
|
| 157 |
+
338,78916
|
| 158 |
+
343,78942
|
| 159 |
+
347,78951
|
| 160 |
+
348,78953
|
| 161 |
+
351,78969
|
| 162 |
+
355,78987
|
| 163 |
+
357,78991
|
| 164 |
+
358,79001
|
| 165 |
+
359,79017
|
| 166 |
+
360,79019
|
| 167 |
+
361,79023
|
| 168 |
+
362,79024
|
| 169 |
+
363,79031
|
| 170 |
+
365,79037
|
| 171 |
+
369,79071
|
| 172 |
+
371,79081
|
| 173 |
+
373,79086
|
| 174 |
+
374,79090
|
| 175 |
+
376,79093
|
| 176 |
+
377,79095
|
| 177 |
+
379,79101
|
| 178 |
+
382,79113
|
| 179 |
+
383,79114
|
| 180 |
+
385,79117
|
| 181 |
+
386,79127
|
| 182 |
+
387,79129
|
| 183 |
+
389,79133
|
| 184 |
+
392,79145
|
| 185 |
+
393,79152
|
| 186 |
+
394,79160
|
| 187 |
+
395,79164
|
| 188 |
+
400,79177
|
| 189 |
+
401,79187
|
| 190 |
+
402,79188
|
| 191 |
+
403,79192
|
| 192 |
+
404,79193
|
| 193 |
+
405,79198
|
| 194 |
+
408,79205
|
| 195 |
+
409,79210
|
| 196 |
+
410,79211
|
| 197 |
+
411,79217
|
| 198 |
+
412,79221
|
| 199 |
+
415,79237
|
| 200 |
+
417,79266
|
| 201 |
+
420,79280
|
| 202 |
+
421,79284
|
| 203 |
+
422,79297
|
| 204 |
+
423,79316
|
| 205 |
+
424,79324
|
| 206 |
+
425,79325
|
| 207 |
+
426,79328
|
| 208 |
+
427,79331
|
| 209 |
+
428,79340
|
| 210 |
+
430,79354
|
| 211 |
+
431,79355
|
| 212 |
+
433,79361
|
| 213 |
+
434,79362
|
| 214 |
+
436,79378
|
| 215 |
+
444,79426
|
| 216 |
+
445,79435
|
| 217 |
+
447,79451
|
| 218 |
+
448,79462
|
| 219 |
+
449,79465
|
| 220 |
+
450,79466
|
| 221 |
+
451,79467
|
| 222 |
+
452,79477
|
| 223 |
+
453,79480
|
| 224 |
+
454,79483
|
| 225 |
+
455,79486
|
| 226 |
+
456,79488
|
| 227 |
+
458,79495
|
| 228 |
+
459,79497
|
| 229 |
+
463,79518
|
| 230 |
+
465,79529
|
| 231 |
+
466,79531
|
| 232 |
+
471,79549
|
| 233 |
+
472,79550
|
| 234 |
+
473,79551
|
| 235 |
+
476,79561
|
| 236 |
+
477,79565
|
| 237 |
+
478,79568
|
| 238 |
+
479,79576
|
| 239 |
+
480,79580
|
| 240 |
+
483,79593
|
| 241 |
+
484,79594
|
| 242 |
+
485,79609
|
| 243 |
+
486,79610
|
| 244 |
+
487,79614
|
| 245 |
+
489,79631
|
| 246 |
+
495,79653
|
| 247 |
+
496,79655
|
| 248 |
+
497,79660
|
| 249 |
+
498,79667
|
| 250 |
+
499,79673
|
| 251 |
+
500,79674
|
| 252 |
+
501,79686
|
| 253 |
+
502,79687
|
| 254 |
+
504,79694
|
| 255 |
+
506,79703
|
| 256 |
+
509,79727
|
| 257 |
+
513,79742
|
| 258 |
+
514,79754
|
| 259 |
+
515,79757
|
| 260 |
+
516,79762
|
| 261 |
+
517,79764
|
| 262 |
+
519,79769
|
| 263 |
+
522,79775
|
| 264 |
+
524,79786
|
| 265 |
+
526,79789
|
| 266 |
+
528,79803
|
| 267 |
+
529,79807
|
| 268 |
+
530,79812
|
| 269 |
+
531,79819
|
| 270 |
+
532,79827
|
| 271 |
+
535,79843
|
| 272 |
+
536,79844
|
| 273 |
+
537,79854
|
| 274 |
+
538,79859
|
| 275 |
+
539,79863
|
| 276 |
+
543,79907
|
| 277 |
+
544,79908
|
| 278 |
+
545,79909
|
| 279 |
+
546,79915
|
| 280 |
+
547,79920
|
| 281 |
+
548,79921
|
| 282 |
+
549,79931
|
| 283 |
+
550,79932
|
| 284 |
+
551,79933
|
| 285 |
+
556,79953
|
| 286 |
+
557,79965
|
| 287 |
+
558,79981
|
| 288 |
+
559,79991
|
| 289 |
+
561,80018
|
| 290 |
+
562,80022
|
| 291 |
+
563,80024
|
| 292 |
+
564,80026
|
| 293 |
+
565,80027
|
| 294 |
+
566,80030
|
| 295 |
+
567,80033
|
| 296 |
+
568,80036
|
| 297 |
+
569,80038
|
| 298 |
+
570,80039
|
| 299 |
+
571,80042
|
| 300 |
+
572,80044
|
| 301 |
+
573,80045
|
| 302 |
+
574,80048
|
| 303 |
+
575,80058
|
| 304 |
+
580,80087
|
| 305 |
+
581,80095
|
| 306 |
+
583,80106
|
| 307 |
+
584,80108
|
| 308 |
+
585,80123
|
| 309 |
+
586,80129
|
| 310 |
+
588,80139
|
| 311 |
+
590,80147
|
| 312 |
+
592,80156
|
| 313 |
+
595,80164
|
| 314 |
+
599,80180
|
| 315 |
+
600,80183
|
| 316 |
+
604,80197
|
| 317 |
+
605,80202
|
| 318 |
+
607,80210
|
| 319 |
+
610,80225
|
| 320 |
+
611,80231
|
| 321 |
+
613,80243
|
| 322 |
+
614,80249
|
| 323 |
+
619,80259
|
| 324 |
+
622,80287
|
| 325 |
+
624,80298
|
| 326 |
+
625,80301
|
| 327 |
+
626,80303
|
| 328 |
+
627,80307
|
| 329 |
+
628,80308
|
| 330 |
+
629,80310
|
| 331 |
+
630,80312
|
| 332 |
+
631,80315
|
| 333 |
+
632,80317
|
| 334 |
+
633,80318
|
| 335 |
+
640,80361
|
| 336 |
+
641,80363
|
| 337 |
+
642,80375
|
| 338 |
+
643,80377
|
| 339 |
+
645,80380
|
| 340 |
+
646,80389
|
| 341 |
+
647,80390
|
| 342 |
+
648,80392
|
| 343 |
+
649,80393
|
| 344 |
+
650,80396
|
| 345 |
+
651,80401
|
| 346 |
+
652,80404
|
| 347 |
+
653,80405
|
| 348 |
+
656,80418
|
| 349 |
+
657,80419
|
| 350 |
+
658,80429
|
| 351 |
+
660,80440
|
| 352 |
+
663,80445
|
| 353 |
+
664,80447
|
| 354 |
+
666,80453
|
| 355 |
+
667,80455
|
| 356 |
+
669,80460
|
| 357 |
+
671,80468
|
| 358 |
+
672,80471
|
| 359 |
+
675,80479
|
| 360 |
+
677,80489
|
| 361 |
+
678,80495
|
| 362 |
+
681,80511
|
| 363 |
+
682,80512
|
| 364 |
+
684,80520
|
| 365 |
+
685,80524
|
| 366 |
+
686,80532
|
| 367 |
+
687,80538
|
| 368 |
+
688,80540
|
| 369 |
+
690,80544
|
| 370 |
+
691,80546
|
| 371 |
+
692,80555
|
| 372 |
+
694,80561
|
| 373 |
+
696,80570
|
| 374 |
+
700,80582
|
| 375 |
+
701,80584
|
| 376 |
+
702,80586
|
| 377 |
+
705,80604
|
| 378 |
+
708,80612
|
| 379 |
+
709,80615
|
| 380 |
+
715,80637
|
| 381 |
+
718,80661
|
| 382 |
+
721,80680
|
| 383 |
+
723,80689
|
| 384 |
+
724,80699
|
| 385 |
+
727,80725
|
| 386 |
+
730,80734
|
| 387 |
+
732,80739
|
| 388 |
+
733,80741
|
| 389 |
+
734,80747
|
| 390 |
+
735,80751
|
| 391 |
+
736,80753
|
| 392 |
+
741,80801
|
| 393 |
+
744,80828
|
| 394 |
+
746,80852
|
| 395 |
+
751,80867
|
| 396 |
+
752,80871
|
| 397 |
+
753,80872
|
| 398 |
+
754,80873
|
| 399 |
+
755,80875
|
| 400 |
+
756,80877
|
| 401 |
+
757,80881
|
| 402 |
+
758,80886
|
| 403 |
+
759,80894
|
| 404 |
+
760,80897
|
| 405 |
+
761,80911
|
| 406 |
+
762,80912
|
| 407 |
+
764,80923
|
| 408 |
+
765,80924
|
| 409 |
+
766,80930
|
| 410 |
+
772,80952
|
| 411 |
+
773,80955
|
| 412 |
+
774,80963
|
| 413 |
+
778,80979
|
| 414 |
+
779,80980
|
| 415 |
+
780,80988
|
| 416 |
+
781,80992
|
| 417 |
+
782,81003
|
| 418 |
+
783,81014
|
| 419 |
+
788,81045
|
| 420 |
+
791,81077
|
| 421 |
+
796,81107
|
| 422 |
+
797,81110
|
| 423 |
+
798,81121
|
| 424 |
+
802,81135
|
| 425 |
+
804,81140
|
| 426 |
+
805,81144
|
| 427 |
+
806,81149
|
| 428 |
+
807,81150
|
| 429 |
+
808,81151
|
| 430 |
+
810,81160
|
| 431 |
+
811,81162
|
| 432 |
+
814,81173
|
| 433 |
+
815,81178
|
| 434 |
+
816,81188
|
| 435 |
+
818,81205
|
| 436 |
+
819,81207
|
| 437 |
+
820,81208
|
| 438 |
+
827,81239
|
| 439 |
+
830,81253
|
| 440 |
+
834,81275
|
| 441 |
+
835,81280
|
| 442 |
+
840,81295
|
| 443 |
+
847,81312
|
| 444 |
+
850,81315
|
| 445 |
+
851,81323
|
| 446 |
+
852,81325
|
| 447 |
+
855,81339
|
| 448 |
+
857,81349
|
| 449 |
+
859,81363
|
| 450 |
+
863,81380
|
| 451 |
+
864,81389
|
| 452 |
+
865,81390
|
| 453 |
+
870,81415
|
| 454 |
+
871,81418
|
| 455 |
+
874,81430
|
| 456 |
+
876,81439
|
| 457 |
+
877,81441
|
| 458 |
+
882,81461
|
| 459 |
+
883,81465
|
| 460 |
+
884,81473
|
| 461 |
+
885,81474
|
| 462 |
+
887,81476
|
| 463 |
+
889,81487
|
| 464 |
+
901,81533
|
| 465 |
+
914,81569
|
| 466 |
+
915,81570
|
| 467 |
+
921,81599
|
| 468 |
+
922,81602
|
| 469 |
+
923,81604
|
| 470 |
+
941,81765
|
| 471 |
+
956,81981
|
| 472 |
+
957,81982
|
| 473 |
+
958,81991
|
| 474 |
+
961,82019
|
| 475 |
+
962,82024
|
| 476 |
+
965,82043
|
| 477 |
+
969,82092
|
| 478 |
+
970,82096
|
| 479 |
+
971,82104
|
| 480 |
+
978,82152
|
| 481 |
+
979,82157
|
| 482 |
+
983,82180
|
| 483 |
+
985,82191
|
| 484 |
+
987,82219
|
| 485 |
+
994,82247
|
| 486 |
+
997,82302
|
| 487 |
+
1001,82345
|
| 488 |
+
1003,82360
|
| 489 |
+
1012,82444
|
| 490 |
+
1016,82466
|
| 491 |
+
1021,82483
|
| 492 |
+
1022,82487
|
| 493 |
+
1023,82500
|
| 494 |
+
1024,82507
|
| 495 |
+
1025,82516
|
| 496 |
+
1026,82521
|
| 497 |
+
1028,82558
|
| 498 |
+
1029,82565
|
| 499 |
+
1032,82588
|
| 500 |
+
1033,82589
|
| 501 |
+
1043,82648
|
| 502 |
+
1045,82694
|
| 503 |
+
1046,82703
|
| 504 |
+
1049,82715
|
| 505 |
+
1051,82731
|
| 506 |
+
1052,82737
|
| 507 |
+
1054,82743
|
| 508 |
+
1055,82763
|
| 509 |
+
1056,82764
|
| 510 |
+
1057,82768
|
| 511 |
+
1061,82846
|
| 512 |
+
1062,82848
|
| 513 |
+
1063,82850
|
| 514 |
+
1067,82891
|
| 515 |
+
1073,82928
|
| 516 |
+
1075,82944
|
| 517 |
+
1079,83002
|
| 518 |
+
1080,83023
|
| 519 |
+
1081,83049
|
| 520 |
+
1085,83080
|
| 521 |
+
1095,83157
|
| 522 |
+
1096,83168
|
| 523 |
+
1099,83185
|
| 524 |
+
1101,83192
|
| 525 |
+
1102,83195
|
| 526 |
+
1106,83238
|
| 527 |
+
1107,83244
|
| 528 |
+
1110,83254
|
| 529 |
+
1114,83276
|
| 530 |
+
1115,83278
|
| 531 |
+
1120,83300
|
| 532 |
+
1123,83319
|
| 533 |
+
1124,83335
|
| 534 |
+
1126,83340
|
| 535 |
+
1127,83352
|
| 536 |
+
1132,83380
|
| 537 |
+
1139,83434
|
| 538 |
+
1142,83451
|
| 539 |
+
1143,83452
|
| 540 |
+
1145,83473
|
| 541 |
+
1149,83500
|
| 542 |
+
1150,83502
|
| 543 |
+
1151,83513
|
| 544 |
+
1154,83529
|
| 545 |
+
1156,83551
|
| 546 |
+
1159,83566
|
| 547 |
+
1166,83605
|
| 548 |
+
1168,83613
|
| 549 |
+
1169,83615
|
| 550 |
+
1172,83624
|
| 551 |
+
1174,83640
|
| 552 |
+
1177,83665
|
| 553 |
+
1181,83677
|
| 554 |
+
1183,83694
|
| 555 |
+
1184,83696
|
| 556 |
+
1186,83703
|
| 557 |
+
1199,83786
|
| 558 |
+
1208,83906
|
| 559 |
+
1211,83919
|
| 560 |
+
1216,83968
|
| 561 |
+
1217,83971
|
| 562 |
+
1219,83984
|
| 563 |
+
1223,84000
|
| 564 |
+
1224,84001
|
| 565 |
+
1226,84008
|
| 566 |
+
1227,84014
|
| 567 |
+
1232,84117
|
| 568 |
+
1235,84140
|
| 569 |
+
1239,84174
|
| 570 |
+
1241,84177
|
| 571 |
+
1244,84188
|
| 572 |
+
1246,84203
|
| 573 |
+
1251,84284
|
| 574 |
+
1252,84297
|
| 575 |
+
1256,84349
|
| 576 |
+
1258,84364
|
| 577 |
+
1260,84385
|
| 578 |
+
1261,84386
|
| 579 |
+
1266,84412
|
| 580 |
+
1267,84435
|
| 581 |
+
1271,84489
|
| 582 |
+
1277,84537
|
| 583 |
+
1284,84598
|
| 584 |
+
1285,84599
|
| 585 |
+
1287,84611
|
| 586 |
+
1288,84619
|
| 587 |
+
1289,84620
|
| 588 |
+
1290,84623
|
| 589 |
+
1291,84640
|
| 590 |
+
1294,84648
|
| 591 |
+
1295,84654
|
| 592 |
+
1297,84679
|
| 593 |
+
1303,84717
|
| 594 |
+
1307,84781
|
| 595 |
+
1313,84840
|
| 596 |
+
1315,84845
|
| 597 |
+
1316,84851
|
| 598 |
+
1320,84883
|
| 599 |
+
1327,84933
|
| 600 |
+
1333,84969
|
| 601 |
+
1335,84988
|
| 602 |
+
1336,84992
|
| 603 |
+
1341,85015
|
| 604 |
+
1346,85028
|
| 605 |
+
1350,85040
|
| 606 |
+
1358,85085
|
| 607 |
+
1360,85088
|
| 608 |
+
1362,85099
|
| 609 |
+
1365,85103
|
| 610 |
+
1367,85106
|
| 611 |
+
1369,85138
|
| 612 |
+
1370,85139
|
| 613 |
+
1372,85144
|
| 614 |
+
1374,85150
|
| 615 |
+
1383,85177
|
| 616 |
+
1385,85179
|
| 617 |
+
1386,85190
|
| 618 |
+
1397,85276
|
| 619 |
+
1400,85287
|
| 620 |
+
1404,85305
|
| 621 |
+
1405,85309
|
| 622 |
+
1409,85333
|
| 623 |
+
1411,85338
|
| 624 |
+
1415,85348
|
| 625 |
+
1418,85367
|
| 626 |
+
1419,85368
|
| 627 |
+
1426,85398
|
| 628 |
+
1432,85430
|
| 629 |
+
1445,85490
|
| 630 |
+
1449,85508
|
| 631 |
+
1457,85552
|
| 632 |
+
1461,85563
|
| 633 |
+
1463,85565
|
| 634 |
+
1467,85582
|
| 635 |
+
1490,85652
|
| 636 |
+
1496,85668
|
| 637 |
+
1498,85675
|
| 638 |
+
1501,85680
|
| 639 |
+
1502,85687
|
| 640 |
+
1507,85711
|
| 641 |
+
1510,85722
|
| 642 |
+
1512,85729
|
| 643 |
+
1516,85733
|
| 644 |
+
1520,85737
|
| 645 |
+
1531,85751
|
| 646 |
+
1535,85755
|
| 647 |
+
1575,85800
|
| 648 |
+
1581,85809
|
| 649 |
+
1595,85823
|
| 650 |
+
1606,85834
|
| 651 |
+
1617,85846
|
| 652 |
+
1626,85857
|
| 653 |
+
1671,85913
|
| 654 |
+
1681,85925
|
| 655 |
+
1689,85934
|
| 656 |
+
1711,85962
|
| 657 |
+
1723,85974
|
| 658 |
+
1732,85986
|
| 659 |
+
1733,85987
|
| 660 |
+
1754,86012
|
| 661 |
+
1771,86031
|
| 662 |
+
1777,86040
|
| 663 |
+
1791,86059
|
| 664 |
+
1797,86067
|
| 665 |
+
1804,86077
|
| 666 |
+
1832,86110
|
| 667 |
+
1851,86134
|
| 668 |
+
1852,86135
|
| 669 |
+
1869,86153
|
| 670 |
+
1897,86184
|
| 671 |
+
1903,86191
|
| 672 |
+
1917,86205
|
| 673 |
+
1954,90251
|
| 674 |
+
1957,90742
|
| 675 |
+
1958,90792
|
| 676 |
+
1961,90876
|
| 677 |
+
1965,91863
|
| 678 |
+
1966,91876
|
| 679 |
+
1967,91883
|
| 680 |
+
1968,91884
|
| 681 |
+
1971,91905
|
| 682 |
+
1973,97148
|
| 683 |
+
1974,98018
|
| 684 |
+
1977,98317
|
productos.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|