Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b942e84458 | ||
|
|
e81027cc44 |
@@ -0,0 +1,180 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""Python TOTAL - Matplotlib.ipynb
|
||||
|
||||
Automatically generated by Colaboratory.
|
||||
|
||||
Original file is located at
|
||||
https://colab.research.google.com/drive/1CqTZeTV1_gEcvQEVFOVdUh1Ibcf1HcS0
|
||||
|
||||
# Práctica de la librería Matplotlib
|
||||
|
||||
En este notebook, se desarrollarán una serie de tareas utilizando la librería Matplotlib, empleada para la visualización de datos mediante gráficos.
|
||||
|
||||
Se proponen y documentan posibles formas de resolver los ejercicios, pero pueden existir varias formas de lograr los mismos resultados.
|
||||
|
||||
Siempre es una buena idea verificar la [Documentación Oficial de Matplotlib](https://matplotlib.org/stable/index.html), donde es posible encontrar todo tipo de información referida a esta librería. Y si te quedas trabado, busca en Google "como hacer [algo] con Matplotlib". Hay enormes probabilidades de que esa pregunta ya haya sido respondida!
|
||||
|
||||
Por ejemplo, si quieres crear un gráfico con `plt.subplots()`, puedes buscar directamente en Google [`plt.subplots()`](https://www.google.com/search?q=plt.subplots())
|
||||
"""
|
||||
|
||||
# Commented out IPython magic to ensure Python compatibility.
|
||||
# Importamos el módulo de Matplotlib como plt
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
# La siguiente linea nos permite ver los gráficos directamente al ejecutarlos en el notebook
|
||||
# %matplotlib inline
|
||||
|
||||
# Creamos un gráfico utilizando plt.plot()
|
||||
plt.plot()
|
||||
|
||||
# Graficamos una lista de números
|
||||
a = [1,5,3,8,7,15]
|
||||
plt.plot(a)
|
||||
|
||||
# Creamos dos listas, x e y. Llenamos a la lista x de valores del 1 al 100.
|
||||
x = list(range(101))
|
||||
|
||||
# Los valores de y van a equivaler al cuadrado del respectivo valor en x con el mísmo índice
|
||||
y = []
|
||||
for numero in x:
|
||||
y.append(numero**2)
|
||||
|
||||
# Graficamos ambas listas creadas
|
||||
plt.plot(x,y)
|
||||
|
||||
"""Hay otra manera de crear gráficos en Matplotlib, utilizando el método orientado a objetos (OO)."""
|
||||
|
||||
# Creamos el gráfico utilizando plt.subplots()
|
||||
# fig se refiere a la figurar general
|
||||
# ax se refiere al eje
|
||||
fig, ax = plt.subplots()
|
||||
|
||||
ax.plot(x, y)
|
||||
|
||||
"""Veamos cómo sería un flujo de trabajo en Matplotlib"""
|
||||
|
||||
# Commented out IPython magic to ensure Python compatibility.
|
||||
# Importar y preparar la librería
|
||||
import matplotlib.pyplot as plt
|
||||
# %matplotlib inline
|
||||
|
||||
# Preparar los datos
|
||||
x = list(range(101))
|
||||
y = []
|
||||
for numero in x:
|
||||
y.append(numero**2)
|
||||
|
||||
# Preparamos el área del gráfico (fig) y el gráfico en sí (ax) utilizando plt.subplots()
|
||||
fig, ax = plt.subplots()
|
||||
|
||||
# Añadimos los datos al gráfico
|
||||
ax.plot(x, y)
|
||||
|
||||
# Personalizamos el gráfico añadiendo título al gráfico y a los ejes x e y
|
||||
ax.set(title="Gráfico de casos de COVID-10 en Latam", xlabel="Días", ylabel="Casos confirmados")
|
||||
|
||||
# Guardamos nuestro gráfico empleando fig.savefig()
|
||||
fig.savefig("/ejemplo-grafico-covif.png")
|
||||
|
||||
"""Veamos ahora un gráfico de dispersión:"""
|
||||
|
||||
#creamos un nuveo set de datos utilizando la librería Numpy
|
||||
import numpy as np
|
||||
|
||||
x_1 = np.linspace(0, 100, 20)
|
||||
y_1 = x_1**2
|
||||
|
||||
# Creamos el gráfico de dispersión de x vs y
|
||||
fig, ax = plt.subplots()
|
||||
ax.scatter(x_1, y_1)
|
||||
|
||||
ax.set(title="Otro gráfico más", xlabel="Días", ylabel="Aumento exponencial")
|
||||
|
||||
# Visualizamos ahora la función seno, utilizando np.sin(X)
|
||||
fig, ax = plt.subplots()
|
||||
x_2 = np.linspace(-10, 10, 100)
|
||||
y_2 = np.sin(x_2)
|
||||
|
||||
ax.scatter(x_2, y_2)
|
||||
|
||||
"""Veamos ahora otro tipo de gráfico. Por ejemplo, un gráfico de barras, que por lo general asocia resultados numéricos a variables categóricas (categorías)"""
|
||||
|
||||
# Creemos un diccionario con tres platos y su respectivo precio
|
||||
# Las claves del diccionario serán los nombres de las comidas, y los valores asociados, su precio
|
||||
comidas = {"lasagna":350, "sopa":150, "roast beef":650}
|
||||
|
||||
# Crearemos un gráfico de barras donde el eje x está formado por las claves del diccionario,
|
||||
# y el eje y contiene los valores.
|
||||
fig, ax = plt.subplots()
|
||||
ax.bar(comidas.keys(), comidas.values())
|
||||
|
||||
|
||||
# Añadimos los títulos correspondientes
|
||||
ax.set(title="Precios de comidas", xlabel="Comidas", ylabel="Precios")
|
||||
|
||||
# Probemos a continuación con un gráfico de barras horizontales
|
||||
fig, ax = plt.subplots()
|
||||
ax.barh(list(comidas.keys()), list(comidas.values()))
|
||||
|
||||
ax.set(title="Precios de comidas", xlabel="Precios", ylabel="Comidas")
|
||||
|
||||
"""Un gráfico semejante es un histograma. Podemos generar números aleatorios que siguen una distribución normal (que se acumulan en torno a un valor central), con la función randn:"""
|
||||
|
||||
# Creamos una distribución de 1000 valores aleatorios distribuidos normalmente
|
||||
x = np.random.random(1000)
|
||||
|
||||
# Creamos el histograma
|
||||
fig, ax = plt.subplots()
|
||||
ax.hist(x)
|
||||
|
||||
"""Veamos ahora un caso más complejo, trabajando con subplots, o figuras que cotienen varios gráficos:"""
|
||||
|
||||
# Creamos una figura con 4 subgráficos (2 por fila)
|
||||
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2, figsize=(12,8))
|
||||
|
||||
"""Añadimos datos a cada uno de los gráficos (axes)"""
|
||||
|
||||
# Creamos la misma disposición de gráficos, con un tamaño de figura de 10x5
|
||||
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2, figsize=(10,5))
|
||||
|
||||
# Para nuestro primer gráfico, tomamos el conjunto x_1, y_1, y generamos un gráfico de líneas
|
||||
ax1.plot(x_1, y_1)
|
||||
|
||||
|
||||
# Para nuestro segundo gráfico, tomamos el conjunto x_2, y_2, y generamos un gráfico de dispersión
|
||||
ax2.scatter(x_2,y_2)
|
||||
|
||||
# Creamos un gráfico con los precios de tres comidas en la esquina inferior izquierda
|
||||
ax3.bar(comidas.keys(), comidas.values())
|
||||
|
||||
# El gráfico de la esquina inferior derecha será un histograma de valores aleatorios con distribución normal
|
||||
ax4.hist(np.random.randn(1000))
|
||||
|
||||
"""Matplotlib tiene un conjunto de varios estilos disponibles, podemos verificarlos de la siguiente manera:"""
|
||||
|
||||
# Verificamos estilos disponibles
|
||||
plt.style.available
|
||||
|
||||
# Cambiamos el estilo predeterminado por "seaborn-whitegrid"
|
||||
plt.style.use('seaborn-v0_8-whitegrid')
|
||||
|
||||
"""Habiendo cambiado el estilo (el cambio más evidente que veremos será una grilla en el fondo de cada gráfico), cambiaremos también los colores de las líneas, puntos y barras en cada uno de los gráficos por códigos hex a nuestra preferencia:
|
||||
|
||||
"""
|
||||
|
||||
# Copiamos los valores de los gráficos anteriores
|
||||
# Creamos la misma disposición de gráficos, con un tamaño de figura de 10x5
|
||||
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2, figsize=(10,5))
|
||||
|
||||
# Para nuestro primer gráfico, tomamos el conjunto x_1, y_1, y generamos un gráfico de líneas
|
||||
ax1.plot(x_1, y_1, color="#fcba03")
|
||||
|
||||
|
||||
# Para nuestro segundo gráfico, tomamos el conjunto x_2, y_2, y generamos un gráfico de dispersión
|
||||
ax2.scatter(x_2,y_2, color="#fcba02")
|
||||
|
||||
# Creamos un gráfico con los precios de tres comidas en la esquina inferior izquierda
|
||||
ax3.bar(comidas.keys(), comidas.values(), color="#03c6fc")
|
||||
|
||||
# El gráfico de la esquina inferior derecha será un histograma de valores aleatorios con distribución normal
|
||||
ax4.hist(np.random.randn(1000), color="#fc036b")
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,6 @@
|
||||
print("El nombre de tu cerveza\nes '" + input("Que ciudad te gustaria visitar?: ") + " " + input("Cual es tu color favorito?: ") + "'\nFelicitaciones!")
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,6 @@
|
||||
nombre = input("Por favor, dime tu nombre: ")
|
||||
ventas = int(input("Diga sus ventas totales del mes: "))
|
||||
|
||||
comision = round(ventas * 13 / 100,2)
|
||||
|
||||
print(f"Hola {nombre}, tus comisiones de este mes son de ${comision}")
|
||||
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,41 @@
|
||||
texto = input("Ingresa un texto a elección: ")
|
||||
letras = []
|
||||
|
||||
texto = texto.lower()
|
||||
|
||||
letras.append(input("Ingresa la primera letra: ".lower()))
|
||||
letras.append(input("Ingresa la segunda letra: ".lower()))
|
||||
letras.append(input("Ingresa la tercera letra: ".lower()))
|
||||
|
||||
print("\n")
|
||||
print("CANTIDAD DE LETRAS")
|
||||
cantidad_letras1 = texto.count(letras[0])
|
||||
cantidad_letras2 = texto.count(letras[1])
|
||||
cantidad_letras3 = texto.count(letras[2])
|
||||
|
||||
print(f"Hemos encontrado la letra '{letras[0]}' repetida {cantidad_letras1} veces")
|
||||
print(f"Hemos encontrado la letra '{letras[1]}' repetida {cantidad_letras2} veces")
|
||||
print(f"Hemos encontrado la letra '{letras[2]}' repetida {cantidad_letras3} veces")
|
||||
|
||||
print("\n")
|
||||
print("CANTIDAD DE PALABRAS")
|
||||
palabras = texto.split()
|
||||
print(f"Hemos encontrado {len(palabras)} palabras en tu texto")
|
||||
|
||||
print("\n")
|
||||
print("LETRAS DE INICIO Y DE FIN")
|
||||
letra_inicio = texto[0]
|
||||
letra_final = texto[-1]
|
||||
print(f"La letra inicial es '{letra_inicio}' y la letra final es '{letra_final}'")
|
||||
|
||||
print("\n")
|
||||
print("TEXTO INVERTIDO")
|
||||
palabras.reverse()
|
||||
texto_invertido = ' '.join(palabras)
|
||||
print(f"Si ordenamos tu texto al revés va a decir: '{texto_invertido}'")
|
||||
|
||||
print("\n")
|
||||
print("BUSCANDO LA PALABRA PYTHON")
|
||||
buscar_python = 'python' in texto
|
||||
dic = {True:"sí", False:"no"}
|
||||
print(f"La palabra 'Python' {dic[buscar_python]} se encuentra en el texto")
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,23 @@
|
||||
from random import randint
|
||||
|
||||
intentos = 0
|
||||
estimado = 0
|
||||
numero_secreto = randint(1,100)
|
||||
nombre = input("Dime tu nombre: ")
|
||||
|
||||
print(f"Bueno {nombre}, he pensado un número entre 1 y 100\nTienes 8 intentos para adivinar")
|
||||
|
||||
while intentos < 8:
|
||||
estimado = int(input("Cuál es el número?: "))
|
||||
intentos += 1
|
||||
|
||||
if estimado < numero_secreto:
|
||||
print("Mi numero es mas alto")
|
||||
elif estimado > numero_secreto:
|
||||
print("Mi numero es mas bajo")
|
||||
else:
|
||||
print(f"Felicitaciones {nombre}! Has adivinado en {intentos} intentos")
|
||||
break
|
||||
|
||||
if estimado != numero_secreto:
|
||||
print(f"Lo siento, se han agotado los intentos. El numero secreto era {numero_secreto}")
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
@@ -0,0 +1,315 @@
|
||||
%PDF-1.4␍%âãÏÓ
|
||||
1 0 obj␍<</MarkInfo<</Marked true>>/Metadata 2 0 R/Pages 3 0 R/StructTreeRoot 5 0 R/Type/Catalog>>␍endobj␍2 0 obj␍<</Length 3513/Subtype/XML/Type/Metadata>>stream
|
||||
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
|
||||
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c017 91.164464, 2020/06/15-10:20:05 ">
|
||||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
||||
<rdf:Description rdf:about=""
|
||||
xmlns:xmp="http://ns.adobe.com/xap/1.0/"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
|
||||
xmlns:pdf="http://ns.adobe.com/pdf/1.3/">
|
||||
<xmp:ModifyDate>2021-09-05T18:00:53-03:00</xmp:ModifyDate>
|
||||
<xmp:CreateDate>2021-09-05T18:00:53-03:00</xmp:CreateDate>
|
||||
<xmp:MetadataDate>2021-09-05T18:00:53-03:00</xmp:MetadataDate>
|
||||
<xmp:CreatorTool>Canva</xmp:CreatorTool>
|
||||
<dc:format>application/pdf</dc:format>
|
||||
<dc:title>
|
||||
<rdf:Alt>
|
||||
<rdf:li xml:lang="x-default">[S5] Python TOTAL Cheat Sheets</rdf:li>
|
||||
</rdf:Alt>
|
||||
</dc:title>
|
||||
<dc:creator>
|
||||
<rdf:Seq>
|
||||
<rdf:li>Facundo Nicolás Colque</rdf:li>
|
||||
</rdf:Seq>
|
||||
</dc:creator>
|
||||
<xmpMM:DocumentID>uuid:eebf06bf-3e1e-4c14-9cda-85798c1c3f38</xmpMM:DocumentID>
|
||||
<xmpMM:InstanceID>uuid:e9bed3f8-450c-4369-919d-68cb1c24dbc9</xmpMM:InstanceID>
|
||||
<pdf:Producer>Canva</pdf:Producer>
|
||||
<pdf:Keywords>DAEpLMhmRl8,BADsJ4ZOebQ</pdf:Keywords>
|
||||
</rdf:Description>
|
||||
</rdf:RDF>
|
||||
</x:xmpmeta>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<?xpacket end="w"?>
|
||||
endstream␍endobj␍3 0 obj␍<</Count 1/Kids[6 0 R]/MediaBox[0.0 7.91997 1620.0 1627.92]/Type/Pages>>␍endobj␍5 0 obj␍<</IDTree 7 0 R/K 8 0 R/ParentTree 9 0 R/ParentTreeNextKey 1/Type/StructTreeRoot>>␍endobj␍7 0 obj␍<</Names[10 0 R 8 0 R 11 0 R 12 0 R 13 0 R 14 0 R 15 0 R 16 0 R 17 0 R 18 0 R 19 0 R 20 0 R 21 0 R 22 0 R 23 0 R 24 0 R 25 0 R 26 0 R 27 0 R 28 0 R 29 0 R 30 0 R 31 0 R 32 0 R 33 0 R 34 0 R 35 0 R 36 0 R 37 0 R 38 0 R 39 0 R 40 0 R 41 0 R 42 0 R 43 0 R 44 0 R 45 0 R 46 0 R 47 0 R 48 0 R 49 0 R 50 0 R 51 0 R 52 0 R 53 0 R 54 0 R 55 0 R 56 0 R 57 0 R 58 0 R 59 0 R 60 0 R 61 0 R 62 0 R 63 0 R 64 0 R 65 0 R 66 0 R 67 0 R 68 0 R 69 0 R 70 0 R 71 0 R 72 0 R 73 0 R 74 0 R 75 0 R 76 0 R]>>␍endobj␍8 0 obj␍<</ID 10 0 R/K 12 0 R/P 5 0 R/S/Document>>␍endobj␍9 0 obj␍<</Nums[0[36 0 R 40 0 R 52 0 R 54 0 R 54 0 R 56 0 R 56 0 R 58 0 R 60 0 R 60 0 R 64 0 R 64 0 R 76 0 R]]>>␍endobj␍36 0 obj␍<</ID 35 0 R/K<</MCID 0/Pg 6 0 R/Type/MCR>>/P 34 0 R/S/NonStruct>>␍endobj␍40 0 obj␍<</ID 39 0 R/K<</MCID 1/Pg 6 0 R/Type/MCR>>/P 38 0 R/S/NonStruct>>␍endobj␍52 0 obj␍<</ID 51 0 R/K<</MCID 2/Pg 6 0 R/Type/MCR>>/P 50 0 R/S/NonStruct>>␍endobj␍54 0 obj␍<</ID 53 0 R/K[<</MCID 3/Pg 6 0 R/Type/MCR>><</MCID 4/Pg 6 0 R/Type/MCR>>]/P 50 0 R/S/NonStruct>>␍endobj␍56 0 obj␍<</ID 55 0 R/K[<</MCID 5/Pg 6 0 R/Type/MCR>><</MCID 6/Pg 6 0 R/Type/MCR>>]/P 50 0 R/S/NonStruct>>␍endobj␍58 0 obj␍<</ID 57 0 R/K<</MCID 7/Pg 6 0 R/Type/MCR>>/P 50 0 R/S/NonStruct>>␍endobj␍60 0 obj␍<</ID 59 0 R/K[<</MCID 8/Pg 6 0 R/Type/MCR>><</MCID 9/Pg 6 0 R/Type/MCR>>]/P 50 0 R/S/NonStruct>>␍endobj␍64 0 obj␍<</ID 63 0 R/K[<</MCID 10/Pg 6 0 R/Type/MCR>><</MCID 11/Pg 6 0 R/Type/MCR>>]/P 62 0 R/S/NonStruct>>␍endobj␍76 0 obj␍<</ID 75 0 R/K<</MCID 12/Pg 6 0 R/Type/MCR>>/P 74 0 R/S/NonStruct>>␍endobj␍75 0 obj␍(node00036882)␍endobj␍74 0 obj␍<</ID 73 0 R/K 76 0 R/P 72 0 R/S/P>>␍endobj␍73 0 obj␍(node00036881)␍endobj␍72 0 obj␍<</ID 71 0 R/K 74 0 R/P 70 0 R/S/Div>>␍endobj␍71 0 obj␍(node00036880)␍endobj␍70 0 obj␍<</ID 69 0 R/K 72 0 R/P 68 0 R/S/Div>>␍endobj␍69 0 obj␍(node00036878)␍endobj␍68 0 obj␍<</ID 67 0 R/K 70 0 R/P 66 0 R/S/Div>>␍endobj␍67 0 obj␍(node00036877)␍endobj␍66 0 obj␍<</ID 65 0 R/K 68 0 R/P 24 0 R/S/Div>>␍endobj␍65 0 obj␍(node00036876)␍endobj␍24 0 obj␍<</ID 23 0 R/K[26 0 R 42 0 R 66 0 R]/P 22 0 R/S/Div>>␍endobj␍23 0 obj␍(node00036834)␍endobj␍22 0 obj␍<</ID 21 0 R/K 24 0 R/P 20 0 R/S/Div>>␍endobj␍21 0 obj␍(node00036833)␍endobj␍20 0 obj␍<</ID 19 0 R/K 22 0 R/P 18 0 R/S/Div>>␍endobj␍19 0 obj␍(node00036832)␍endobj␍18 0 obj␍<</ID 17 0 R/K 20 0 R/P 16 0 R/S/Div>>␍endobj␍17 0 obj␍(node00036831)␍endobj␍16 0 obj␍<</ID 15 0 R/K 18 0 R/P 14 0 R/S/Div>>␍endobj␍15 0 obj␍(node00036830)␍endobj␍14 0 obj␍<</ID 13 0 R/K 16 0 R/P 12 0 R/S/Div>>␍endobj␍13 0 obj␍(node00036745)␍endobj␍12 0 obj␍<</ID 11 0 R/K 14 0 R/P 8 0 R/S/Div>>␍endobj␍11 0 obj␍(node00036743)␍endobj␍26 0 obj␍<</ID 25 0 R/K 28 0 R/P 24 0 R/S/Div>>␍endobj␍42 0 obj␍<</ID 41 0 R/K 44 0 R/P 24 0 R/S/Div>>␍endobj␍41 0 obj␍(node00036861)␍endobj␍44 0 obj␍<</ID 43 0 R/K 46 0 R/P 42 0 R/S/Div>>␍endobj␍43 0 obj␍(node00036862)␍endobj␍46 0 obj␍<</ID 45 0 R/K 48 0 R/P 44 0 R/S/Div>>␍endobj␍45 0 obj␍(node00036863)␍endobj␍48 0 obj␍<</ID 47 0 R/K[50 0 R 62 0 R]/P 46 0 R/S/Div>>␍endobj␍47 0 obj␍(node00036865)␍endobj␍50 0 obj␍<</ID 49 0 R/K[52 0 R 54 0 R 56 0 R 58 0 R 60 0 R]/P 48 0 R/S/P>>␍endobj␍62 0 obj␍<</ID 61 0 R/K 64 0 R/P 48 0 R/S/P>>␍endobj␍61 0 obj␍(node00036874)␍endobj␍49 0 obj␍(node00036866)␍endobj␍25 0 obj␍(node00036847)␍endobj␍28 0 obj␍<</ID 27 0 R/K 30 0 R/P 26 0 R/S/Div>>␍endobj␍27 0 obj␍(node00036848)␍endobj␍30 0 obj␍<</ID 29 0 R/K 32 0 R/P 28 0 R/S/Div>>␍endobj␍29 0 obj␍(node00036849)␍endobj␍32 0 obj␍<</ID 31 0 R/K[34 0 R 38 0 R]/P 30 0 R/S/Div>>␍endobj␍31 0 obj␍(node00036851)␍endobj␍34 0 obj␍<</ID 33 0 R/K 36 0 R/P 32 0 R/S/P>>␍endobj␍38 0 obj␍<</ID 37 0 R/K 40 0 R/P 32 0 R/S/P>>␍endobj␍37 0 obj␍(node00036854)␍endobj␍33 0 obj␍(node00036852)␍endobj␍6 0 obj␍<</BleedBox[0.0 7.91997 1620.0 1627.9199]/Contents 77 0 R/MediaBox[0.0 7.91997 1620.0 1627.9199]/Parent 3 0 R/Resources<</ExtGState<</G3 78 0 R>>/Font<</F10 79 0 R/F11 80 0 R/F6 81 0 R/F8 82 0 R>>/Pattern<</P14 83 0 R/P15 84 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/StructParents 0/TrimBox[0.0 7.91997 1620.0 1627.9199]/Type/Page>>␍endobj␍77 0 obj␍<</Filter/FlateDecode/Length 2502>>stream
|
||||
xœ½ZÛn$·}Ÿ¯èç | ||||