From dd48ac1e722ba079f008b8b532e94960ff900e73 Mon Sep 17 00:00:00 2001 From: AdalbertoCV <34152734@uaz.edu.mx> Date: Mon, 12 Aug 2024 13:54:34 -0600 Subject: [PATCH 1/4] =?UTF-8?q?Primera=20parte=20de=20exportaci=C3=B3n=20d?= =?UTF-8?q?e=20datos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...idades__solicitudes.py => 0001_initial.py} | 2 +- ...rmularios_dinamicos.py => 0001_initial.py} | 107 +- ...eacion_modelos_formularios_dinamicos_02.py | 85 - .../0003_permitir_null_campos_many_to_many.py | 33 - .../0004_permitir_null_campos_many_to_many.py | 33 - .../migrations/0005_set_null_ordenes.py | 28 - .../migrations/0006_merge_migrations.py | 18 - .../migrations/0007_crear_modelo_registro.py | 52 - cosiap_api/dynamic_forms/models.py | 5 +- cosiap_api/dynamic_tables/DynamicTable.py | 120 +- ..._dynamictablereport.py => 0001_initial.py} | 6 +- ...lumna_excludefilters_dynamictablereport.py | 22 - ...lumna_excludefilters_dynamictablereport.py | 18 - cosiap_api/dynamic_tables/views.py | 44 +- ...idades__solicitudes.py => 0001_initial.py} | 4 +- .../0002_relacion_modalidad_dynamicForm.py | 20 - .../migrations/0003_merge_migrations.py | 20 - ...idades__solicitudes.py => 0001_initial.py} | 7 +- .../notificaciones/migrations/0002_initial.py | 28 + ...idades__solicitudes.py => 0001_initial.py} | 18 +- .../0002_creacion_modelo_solicitud.py | 31 - .../solicitudes/migrations/0002_initial.py | 22 + .../migrations/0003_merge_migrations.py | 66 - cosiap_api/solicitudes/urls.py | 2 + cosiap_api/users/migrations/0001_initial.py | 64 +- .../migrations/0002_campo_toke_usuario.py | 24 - .../0003_eliminacion_campo_token_usuario.py | 17 - .../0004_creacion_modelo_solicitante.py | 34 - .../0005_creacion_tablas_estado_municipio.py | 44 - .../0006_crear_tabla_datosbancarios.py | 26 - ...07_relacion_banco_municipio_solicitante.py | 24 - .../0008_agregar_choices_regimenfiscal.py | 18 - .../0009_solicitante_campos_no_vacios.py | 60 - ...ts_forms_tables_modalidades_solicitudes.py | 19 - ...lumna_excludefilters_dynamictablereport.py | 18 - ...2_llenando_catalogos_municipios_estados.py | 2570 ----------------- 36 files changed, 383 insertions(+), 3326 deletions(-) rename cosiap_api/dynamic_formats/migrations/{0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py => 0001_initial.py} (94%) rename cosiap_api/dynamic_forms/migrations/{0001_creacion_modelos_formularios_dinamicos.py => 0001_initial.py} (73%) delete mode 100644 cosiap_api/dynamic_forms/migrations/0002_creacion_modelos_formularios_dinamicos_02.py delete mode 100644 cosiap_api/dynamic_forms/migrations/0003_permitir_null_campos_many_to_many.py delete mode 100644 cosiap_api/dynamic_forms/migrations/0004_permitir_null_campos_many_to_many.py delete mode 100644 cosiap_api/dynamic_forms/migrations/0005_set_null_ordenes.py delete mode 100644 cosiap_api/dynamic_forms/migrations/0006_merge_migrations.py delete mode 100644 cosiap_api/dynamic_forms/migrations/0007_crear_modelo_registro.py rename cosiap_api/dynamic_tables/migrations/{0001_creacion_tabla_dynamictablereport.py => 0001_initial.py} (79%) delete mode 100644 cosiap_api/dynamic_tables/migrations/0002_columna_excludefilters_dynamictablereport.py delete mode 100644 cosiap_api/dynamic_tables/migrations/0003_columna_excludefilters_dynamictablereport.py rename cosiap_api/modalidades/migrations/{0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py => 0001_initial.py} (87%) delete mode 100644 cosiap_api/modalidades/migrations/0002_relacion_modalidad_dynamicForm.py delete mode 100644 cosiap_api/modalidades/migrations/0003_merge_migrations.py rename cosiap_api/notificaciones/migrations/{0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py => 0001_initial.py} (76%) create mode 100644 cosiap_api/notificaciones/migrations/0002_initial.py rename cosiap_api/solicitudes/migrations/{0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py => 0001_initial.py} (52%) delete mode 100644 cosiap_api/solicitudes/migrations/0002_creacion_modelo_solicitud.py create mode 100644 cosiap_api/solicitudes/migrations/0002_initial.py delete mode 100644 cosiap_api/solicitudes/migrations/0003_merge_migrations.py delete mode 100644 cosiap_api/users/migrations/0002_campo_toke_usuario.py delete mode 100644 cosiap_api/users/migrations/0003_eliminacion_campo_token_usuario.py delete mode 100644 cosiap_api/users/migrations/0004_creacion_modelo_solicitante.py delete mode 100644 cosiap_api/users/migrations/0005_creacion_tablas_estado_municipio.py delete mode 100644 cosiap_api/users/migrations/0006_crear_tabla_datosbancarios.py delete mode 100644 cosiap_api/users/migrations/0007_relacion_banco_municipio_solicitante.py delete mode 100644 cosiap_api/users/migrations/0008_agregar_choices_regimenfiscal.py delete mode 100644 cosiap_api/users/migrations/0009_solicitante_campos_no_vacios.py delete mode 100644 cosiap_api/users/migrations/0010_creacion_modulos_admin_formats_forms_tables_modalidades_solicitudes.py delete mode 100644 cosiap_api/users/migrations/0011_columna_excludefilters_dynamictablereport.py delete mode 100644 cosiap_api/users/migrations/0012_llenando_catalogos_municipios_estados.py diff --git a/cosiap_api/dynamic_formats/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py b/cosiap_api/dynamic_formats/migrations/0001_initial.py similarity index 94% rename from cosiap_api/dynamic_formats/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py rename to cosiap_api/dynamic_formats/migrations/0001_initial.py index 6a57583..43f3d0c 100644 --- a/cosiap_api/dynamic_formats/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py +++ b/cosiap_api/dynamic_formats/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.0.6 on 2024-07-09 16:29 +# Generated by Django 5.0.7 on 2024-08-12 17:25 import common.nombres_archivos from django.db import migrations, models diff --git a/cosiap_api/dynamic_forms/migrations/0001_creacion_modelos_formularios_dinamicos.py b/cosiap_api/dynamic_forms/migrations/0001_initial.py similarity index 73% rename from cosiap_api/dynamic_forms/migrations/0001_creacion_modelos_formularios_dinamicos.py rename to cosiap_api/dynamic_forms/migrations/0001_initial.py index 4a6fc84..d06ba9a 100644 --- a/cosiap_api/dynamic_forms/migrations/0001_creacion_modelos_formularios_dinamicos.py +++ b/cosiap_api/dynamic_forms/migrations/0001_initial.py @@ -1,20 +1,17 @@ -# Generated by Django 5.0.7 on 2024-07-24 19:20 +# Generated by Django 5.0.7 on 2024-08-12 17:25 import common.nombres_archivos import django.db.models.deletion from django.db import migrations, models -def create_otro_option(apps, schema_editor): - Opcion = apps.get_model('dynamic_forms', 'Opcion') - Opcion.objects.create(nombre='Otro') class Migration(migrations.Migration): initial = True dependencies = [ - ('dynamic_formats', '0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes'), - ('solicitudes', '0003_merge_migrations'), + ('contenttypes', '0002_remove_content_type_name'), + ('dynamic_formats', '0001_initial'), ] operations = [ @@ -24,6 +21,9 @@ class Migration(migrations.Migration): ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('nombre', models.CharField(max_length=100, verbose_name='Nombre del formulario')), ], + options={ + 'verbose_name_plural': '01. Formularios', + }, ), migrations.CreateModel( name='Opcion', @@ -31,21 +31,29 @@ class Migration(migrations.Migration): ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('nombre', models.CharField(max_length=100, verbose_name='Nombre de la opción')), ], + options={ + 'verbose_name_plural': '07. Opciones', + }, ), migrations.CreateModel( - name='RAgregacion', + name='Respuesta', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ], + options={ + 'verbose_name': 'Respuesta', + 'verbose_name_plural': '09. Respuestas', + }, ), migrations.CreateModel( - name='Respuesta', + name='Registro', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('owner_id', models.PositiveIntegerField()), + ('owner_content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.contenttype')), ], options={ - 'verbose_name': 'Respuesta', - 'verbose_name_plural': 'Respuestas', + 'verbose_name_plural': '08. Rel Respuestas Agrecacion', }, ), migrations.CreateModel( @@ -53,8 +61,11 @@ class Migration(migrations.Migration): fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('nombre', models.CharField(max_length=100, verbose_name='Nombre de la sección')), - ('tipo', models.CharField(choices=[('unico', 'Único'), ('agregacion', 'Agregación')], default='unico', max_length=20, verbose_name='Tipo de sección')), + ('tipo', models.CharField(choices=[('unico', 'Único'), ('lista', 'Lista')], default='unico', max_length=20, verbose_name='Tipo de sección')), ], + options={ + 'verbose_name_plural': '03. Secciones', + }, ), migrations.CreateModel( name='Elemento', @@ -68,23 +79,27 @@ class Migration(migrations.Migration): ('max_digits', models.IntegerField(default=10, verbose_name='Máximo de dígitos')), ('formato', models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to='dynamic_formats.dynamicformat', verbose_name='Elemento')), ], + options={ + 'verbose_name_plural': '05. Elementos', + }, ), migrations.CreateModel( name='ElementosOpciones', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('orden', models.IntegerField(verbose_name='Orden')), + ('orden', models.IntegerField(default=0, verbose_name='Orden')), ('elemento', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.elemento', verbose_name='Elemento')), ('opcion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.opcion', verbose_name='Opción')), ], options={ + 'verbose_name_plural': '06. Rel Elemento - Opciones', 'unique_together': {('elemento', 'opcion')}, }, ), migrations.AddField( model_name='elemento', name='opciones', - field=models.ManyToManyField(through='dynamic_forms.ElementosOpciones', to='dynamic_forms.opcion', verbose_name='Opciones'), + field=models.ManyToManyField(blank=True, through='dynamic_forms.ElementosOpciones', to='dynamic_forms.opcion', verbose_name='Opciones'), ), migrations.CreateModel( name='RDocumento', @@ -92,6 +107,9 @@ class Migration(migrations.Migration): ('respuesta_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='dynamic_forms.respuesta')), ('valor', models.FileField(blank=True, null=True, upload_to=common.nombres_archivos.nombre_archivo_respuesta_doc, verbose_name='Subir Documento')), ], + options={ + 'verbose_name_plural': '18. R Documentos', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -100,6 +118,9 @@ class Migration(migrations.Migration): ('respuesta_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='dynamic_forms.respuesta')), ('valor', models.DateField(blank=True, null=True)), ], + options={ + 'verbose_name_plural': '14. R Fechas', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -108,6 +129,9 @@ class Migration(migrations.Migration): ('respuesta_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='dynamic_forms.respuesta')), ('valor', models.TimeField(blank=True, null=True)), ], + options={ + 'verbose_name_plural': '13. R Horas', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -116,6 +140,9 @@ class Migration(migrations.Migration): ('respuesta_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='dynamic_forms.respuesta')), ('valor', models.CharField(blank=True, max_length=255, null=True)), ], + options={ + 'verbose_name_plural': '10. R Numericos', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -124,6 +151,9 @@ class Migration(migrations.Migration): ('respuesta_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='dynamic_forms.respuesta')), ('valor', models.CharField(blank=True, max_length=255, null=True)), ], + options={ + 'verbose_name_plural': '11. R TextoCortos', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -132,6 +162,9 @@ class Migration(migrations.Migration): ('respuesta_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='dynamic_forms.respuesta')), ('valor', models.TextField(blank=True, null=True)), ], + options={ + 'verbose_name_plural': '12. R TextoParrafos', + }, bases=('dynamic_forms.respuesta',), ), migrations.AddField( @@ -141,47 +174,47 @@ class Migration(migrations.Migration): ), migrations.AddField( model_name='respuesta', - name='rAgregacion', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.ragregacion'), + name='registro', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.registro'), ), migrations.AddField( - model_name='respuesta', - name='solicitud', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='solicitudes.solicitud'), + model_name='registro', + name='seccion', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.seccion'), ), migrations.CreateModel( name='DynamicFormsSecciones', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('orden', models.IntegerField(verbose_name='Orden')), + ('orden', models.IntegerField(default=0, verbose_name='Orden')), ('dynamic_form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.dynamicform', verbose_name='Formulario dinámico')), ('seccion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.seccion', verbose_name='Sección')), ], options={ - 'unique_together': {('dynamic_form', 'seccion')}, + 'verbose_name_plural': '02. Rel ormulario - Secciones', }, ), migrations.AddField( model_name='dynamicform', name='secciones', - field=models.ManyToManyField(through='dynamic_forms.DynamicFormsSecciones', to='dynamic_forms.seccion', verbose_name='Secciones'), + field=models.ManyToManyField(blank=True, through='dynamic_forms.DynamicFormsSecciones', to='dynamic_forms.seccion', verbose_name='Secciones'), ), migrations.CreateModel( name='SeccionesElementos', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('orden', models.IntegerField(verbose_name='Orden')), + ('orden', models.IntegerField(default=0, verbose_name='Orden')), ('elemento', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.elemento', verbose_name='Elemento')), ('seccion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.seccion', verbose_name='Sección')), ], options={ - 'unique_together': {('seccion', 'elemento')}, + 'verbose_name_plural': '04. Rel Secciones - Elementos', }, ), migrations.AddField( model_name='seccion', name='elementos', - field=models.ManyToManyField(through='dynamic_forms.SeccionesElementos', to='dynamic_forms.elemento', verbose_name='Elementos'), + field=models.ManyToManyField(blank=True, through='dynamic_forms.SeccionesElementos', to='dynamic_forms.elemento', verbose_name='Elementos'), ), migrations.CreateModel( name='RCasillas', @@ -190,6 +223,9 @@ class Migration(migrations.Migration): ('otro', models.CharField(blank=True, max_length=255, null=True, verbose_name='Otro')), ('valor', models.ManyToManyField(blank=True, to='dynamic_forms.opcion')), ], + options={ + 'verbose_name_plural': '16. R Casillas', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -199,6 +235,9 @@ class Migration(migrations.Migration): ('otro', models.CharField(blank=True, max_length=255, null=True, verbose_name='Otro')), ('valor', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.opcion')), ], + options={ + 'verbose_name_plural': '17. R Desplegables', + }, bases=('dynamic_forms.respuesta',), ), migrations.CreateModel( @@ -208,7 +247,25 @@ class Migration(migrations.Migration): ('otro', models.CharField(blank=True, max_length=255, null=True, verbose_name='Otro')), ('valor', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.opcion')), ], + options={ + 'verbose_name_plural': '15. R Opcion Multiples', + }, bases=('dynamic_forms.respuesta',), ), - migrations.RunPython(create_otro_option), + migrations.AlterUniqueTogether( + name='respuesta', + unique_together={('registro', 'elemento')}, + ), + migrations.AddIndex( + model_name='registro', + index=models.Index(fields=['owner_content_type', 'owner_id'], name='dynamic_for_owner_c_70b1a6_idx'), + ), + migrations.AlterUniqueTogether( + name='dynamicformssecciones', + unique_together={('dynamic_form', 'seccion')}, + ), + migrations.AlterUniqueTogether( + name='seccioneselementos', + unique_together={('seccion', 'elemento')}, + ), ] diff --git a/cosiap_api/dynamic_forms/migrations/0002_creacion_modelos_formularios_dinamicos_02.py b/cosiap_api/dynamic_forms/migrations/0002_creacion_modelos_formularios_dinamicos_02.py deleted file mode 100644 index 57e1622..0000000 --- a/cosiap_api/dynamic_forms/migrations/0002_creacion_modelos_formularios_dinamicos_02.py +++ /dev/null @@ -1,85 +0,0 @@ -# Generated by Django 5.0.7 on 2024-07-24 19:56 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0001_creacion_modelos_formularios_dinamicos'), - ] - - operations = [ - migrations.AlterModelOptions( - name='dynamicform', - options={'verbose_name_plural': '01. Formularios'}, - ), - migrations.AlterModelOptions( - name='dynamicformssecciones', - options={'verbose_name_plural': '02. Rel ormulario - Secciones'}, - ), - migrations.AlterModelOptions( - name='elemento', - options={'verbose_name_plural': '05. Elementos'}, - ), - migrations.AlterModelOptions( - name='elementosopciones', - options={'verbose_name_plural': '06. Rel Elemento - Opciones'}, - ), - migrations.AlterModelOptions( - name='opcion', - options={'verbose_name_plural': '07. Opciones'}, - ), - migrations.AlterModelOptions( - name='ragregacion', - options={'verbose_name_plural': '08. Rel Respuestas Agrecacion'}, - ), - migrations.AlterModelOptions( - name='rcasillas', - options={'verbose_name_plural': '16. R Casillas'}, - ), - migrations.AlterModelOptions( - name='rdesplegable', - options={'verbose_name_plural': '17. R Desplegables'}, - ), - migrations.AlterModelOptions( - name='rdocumento', - options={'verbose_name_plural': '18. R Documentos'}, - ), - migrations.AlterModelOptions( - name='respuesta', - options={'verbose_name': 'Respuesta', 'verbose_name_plural': '09. Respuestas'}, - ), - migrations.AlterModelOptions( - name='rfecha', - options={'verbose_name_plural': '14. R Fechas'}, - ), - migrations.AlterModelOptions( - name='rhora', - options={'verbose_name_plural': '13. R Horas'}, - ), - migrations.AlterModelOptions( - name='rnumerico', - options={'verbose_name_plural': '10. R Numericos'}, - ), - migrations.AlterModelOptions( - name='ropcionmultiple', - options={'verbose_name_plural': '15. R Opcion Multiples'}, - ), - migrations.AlterModelOptions( - name='rtextocorto', - options={'verbose_name_plural': '11. R TextoCortos'}, - ), - migrations.AlterModelOptions( - name='rtextoparrafo', - options={'verbose_name_plural': '12. R TextoParrafos'}, - ), - migrations.AlterModelOptions( - name='seccion', - options={'verbose_name_plural': '03. Secciones'}, - ), - migrations.AlterModelOptions( - name='seccioneselementos', - options={'verbose_name_plural': '04. Rel Secciones - Elementos'}, - ), - ] diff --git a/cosiap_api/dynamic_forms/migrations/0003_permitir_null_campos_many_to_many.py b/cosiap_api/dynamic_forms/migrations/0003_permitir_null_campos_many_to_many.py deleted file mode 100644 index 8536fab..0000000 --- a/cosiap_api/dynamic_forms/migrations/0003_permitir_null_campos_many_to_many.py +++ /dev/null @@ -1,33 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-02 18:56 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0002_creacion_modelos_formularios_dinamicos_02'), - ] - - operations = [ - migrations.AlterField( - model_name='dynamicform', - name='secciones', - field=models.ManyToManyField(blank=True, null=True, through='dynamic_forms.DynamicFormsSecciones', to='dynamic_forms.seccion', verbose_name='Secciones'), - ), - migrations.AlterField( - model_name='elemento', - name='opciones', - field=models.ManyToManyField(blank=True, null=True, through='dynamic_forms.ElementosOpciones', to='dynamic_forms.opcion', verbose_name='Opciones'), - ), - migrations.AlterField( - model_name='rcasillas', - name='valor', - field=models.ManyToManyField(blank=True, null=True, to='dynamic_forms.opcion'), - ), - migrations.AlterField( - model_name='seccion', - name='elementos', - field=models.ManyToManyField(blank=True, null=True, through='dynamic_forms.SeccionesElementos', to='dynamic_forms.elemento', verbose_name='Elementos'), - ), - ] diff --git a/cosiap_api/dynamic_forms/migrations/0004_permitir_null_campos_many_to_many.py b/cosiap_api/dynamic_forms/migrations/0004_permitir_null_campos_many_to_many.py deleted file mode 100644 index f77abf3..0000000 --- a/cosiap_api/dynamic_forms/migrations/0004_permitir_null_campos_many_to_many.py +++ /dev/null @@ -1,33 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-02 19:00 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0003_permitir_null_campos_many_to_many'), - ] - - operations = [ - migrations.AlterField( - model_name='dynamicform', - name='secciones', - field=models.ManyToManyField(blank=True, through='dynamic_forms.DynamicFormsSecciones', to='dynamic_forms.seccion', verbose_name='Secciones'), - ), - migrations.AlterField( - model_name='elemento', - name='opciones', - field=models.ManyToManyField(blank=True, through='dynamic_forms.ElementosOpciones', to='dynamic_forms.opcion', verbose_name='Opciones'), - ), - migrations.AlterField( - model_name='rcasillas', - name='valor', - field=models.ManyToManyField(blank=True, to='dynamic_forms.opcion'), - ), - migrations.AlterField( - model_name='seccion', - name='elementos', - field=models.ManyToManyField(blank=True, through='dynamic_forms.SeccionesElementos', to='dynamic_forms.elemento', verbose_name='Elementos'), - ), - ] diff --git a/cosiap_api/dynamic_forms/migrations/0005_set_null_ordenes.py b/cosiap_api/dynamic_forms/migrations/0005_set_null_ordenes.py deleted file mode 100644 index 5ad7597..0000000 --- a/cosiap_api/dynamic_forms/migrations/0005_set_null_ordenes.py +++ /dev/null @@ -1,28 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-02 19:28 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0004_permitir_null_campos_many_to_many'), - ] - - operations = [ - migrations.AlterField( - model_name='dynamicformssecciones', - name='orden', - field=models.IntegerField(default=0, verbose_name='Orden'), - ), - migrations.AlterField( - model_name='elementosopciones', - name='orden', - field=models.IntegerField(default=0, verbose_name='Orden'), - ), - migrations.AlterField( - model_name='seccioneselementos', - name='orden', - field=models.IntegerField(default=0, verbose_name='Orden'), - ), - ] diff --git a/cosiap_api/dynamic_forms/migrations/0006_merge_migrations.py b/cosiap_api/dynamic_forms/migrations/0006_merge_migrations.py deleted file mode 100644 index f766480..0000000 --- a/cosiap_api/dynamic_forms/migrations/0006_merge_migrations.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-08 16:09 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0005_set_null_ordenes'), - ] - - operations = [ - migrations.AlterField( - model_name='seccion', - name='tipo', - field=models.CharField(choices=[('unico', 'Único'), ('lista', 'Lista')], default='unico', max_length=20, verbose_name='Tipo de sección'), - ), - ] diff --git a/cosiap_api/dynamic_forms/migrations/0007_crear_modelo_registro.py b/cosiap_api/dynamic_forms/migrations/0007_crear_modelo_registro.py deleted file mode 100644 index 18fd988..0000000 --- a/cosiap_api/dynamic_forms/migrations/0007_crear_modelo_registro.py +++ /dev/null @@ -1,52 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-12 15:54 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('contenttypes', '0002_remove_content_type_name'), - ('dynamic_forms', '0006_merge_migrations'), - ] - - operations = [ - migrations.CreateModel( - name='Registro', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('owner_id', models.PositiveIntegerField()), - ('owner_content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.contenttype')), - ('seccion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.seccion')), - ], - options={ - 'verbose_name_plural': '08. Rel Respuestas Agrecacion', - }, - ), - migrations.AddField( - model_name='respuesta', - name='registro', - field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to='dynamic_forms.registro'), - preserve_default=False, - ), - migrations.AlterUniqueTogether( - name='respuesta', - unique_together={('registro', 'elemento')}, - ), - migrations.AddIndex( - model_name='registro', - index=models.Index(fields=['owner_content_type', 'owner_id'], name='dynamic_for_owner_c_70b1a6_idx'), - ), - migrations.RemoveField( - model_name='respuesta', - name='rAgregacion', - ), - migrations.RemoveField( - model_name='respuesta', - name='solicitud', - ), - migrations.DeleteModel( - name='RAgregacion', - ), - ] diff --git a/cosiap_api/dynamic_forms/models.py b/cosiap_api/dynamic_forms/models.py index 1609460..bc0be1e 100644 --- a/cosiap_api/dynamic_forms/models.py +++ b/cosiap_api/dynamic_forms/models.py @@ -180,7 +180,7 @@ class Respuesta(models.Model): verbose_name_plural = '09. Respuestas' unique_together = ('registro', 'elemento') - + ''' def __str__(self): return f"Respuesta {type(self)} - Elemento: {self.elemento} - Solicitante: {self.solicitud.solicitante_id}" @@ -189,7 +189,8 @@ class Respuesta(models.Model): if self.elemento.seccioneselementos_set.filter(seccion__tipo='unico').exists(): if Respuesta.objects.filter(elemento=self.elemento, solicitud=self.solicitud).exists(): raise IntegrityError('Ya existe una respuesta para este elemento y solicitud') - super().save(*args, **kwargs) + super().save(*args, **kwargs) + ''' def getStringValue(self): diff --git a/cosiap_api/dynamic_tables/DynamicTable.py b/cosiap_api/dynamic_tables/DynamicTable.py index 4cb3716..12f6799 100644 --- a/cosiap_api/dynamic_tables/DynamicTable.py +++ b/cosiap_api/dynamic_tables/DynamicTable.py @@ -12,9 +12,18 @@ from django.db.models import ForeignKey, ManyToManyField, OneToOneField, ManyToO import re from django.core.exceptions import ValidationError, FieldDoesNotExist import json - - -exclude_pattern = re.compile(r'^id$|^password$|^last_login$|^created_at$|^updated_at$|^usuario_ptr$|^groups$|^user_permissions$|^dynamic_form$', re.IGNORECASE) +import csv +import os +import shutil +from django.conf import settings +from django.core.files.storage import default_storage +from django.core.files.base import ContentFile +from django.http import HttpResponse +from zipfile import ZipFile +import io +from dynamic_forms.models import RDocumento + +exclude_pattern = re.compile(r'^password$|^last_login$|^created_at$|^updated_at$|^usuario_ptr$|^groups$|^user_permissions$|^dynamic_form$', re.IGNORECASE) class DynamicTable(serializers.ModelSerializer): ''' @@ -560,3 +569,108 @@ class DynamicTable(serializers.ModelSerializer): return overall_success + + def export_to_csv_and_zip(self, data, uid): + """ + Exporta los datos a un CSV y los archivos asociados a una estructura de directorios, + y luego empaqueta todo en un archivo zip. + """ + # Directorio temporal + temp_dir = os.path.join(settings.BASE_DIR, 'temp_export', uid) + os.makedirs(temp_dir, exist_ok=True) + + # Directorio para archivos + files_dir = os.path.join(temp_dir, 'archivos') + os.makedirs(files_dir, exist_ok=True) + + # Ruta para el archivo CSV + csv_file_path = os.path.join(temp_dir, 'reporte.csv') + + # Crear el archivo CSV + with open(csv_file_path, mode='w', newline='', encoding='utf-8') as csvfile: + fieldnames = self.get_fieldnames(data) + print(data) + print(fieldnames) + writer = csv.DictWriter(csvfile, fieldnames=fieldnames) + writer.writeheader() + for item in data: + # Manejar archivos adjuntos y agregar campos de rutas a CSV + self.handle_files(item, files_dir) + # Manejar documentos asociados + if 'solicitud_n' in item: + self.handle_responses(item['solicitud_n'], files_dir) + writer.writerow(item) + + # Crear un archivo zip + zip_buffer = io.BytesIO() + with ZipFile(zip_buffer, 'w') as zip_file: + zip_file.write(csv_file_path, 'data_export.csv') + + for root, dirs, files in os.walk(files_dir): + for file in files: + file_path = os.path.join(root, file) + zip_file.write(file_path, os.path.relpath(file_path, files_dir)) + + zip_buffer.seek(0) + response = HttpResponse(zip_buffer, content_type='application/zip') + response['Content-Disposition'] = f'attachment; filename="reporte_{uid}.zip"' + + # Limpiar directorio temporal + shutil.rmtree(temp_dir) + + return response + + def get_fieldnames(self, data): + """ + Devuelve los nombres de los campos que se usarán en el CSV. + """ + if not data: + return [] + + first_item = data[0] + return list(first_item.keys()) + + def handle_files(self, item, files_dir): + """ + Maneja los archivos adjuntos, los guarda en el directorio correspondiente basado en el nombre de la columna. + """ + for key, value in item.items(): + if value and isinstance(value, str) and value.endswith(('.png', '.jpg', '.jpeg')): + # Detectar directorio basado en el nombre de la columna + column_dir = key.split('__')[0] + + # Crear el directorio para archivos + file_dir = os.path.join(files_dir, column_dir) + os.makedirs(file_dir, exist_ok=True) + + file_name = os.path.basename(value) + file_path = os.path.join(file_dir, file_name) + + # Simular la descarga del archivo + file_content = default_storage.open(value).read() + with open(file_path, 'wb') as f: + f.write(file_content) + + # Actualizar la ruta del archivo en el diccionario + item[key] = os.path.join('archivos', column_dir, file_name) + + def handle_responses(self, solicitud_n, files_dir): + """ + Maneja la extracción de respuestas relacionadas con la solicitud y las guarda en el directorio correspondiente. + """ + # Filtrar las respuestas por solicitud_n + responses = RDocumento.objects.filter(registro_id=solicitud_n) + respuesta_dir = os.path.join(files_dir, 'respuestas') + os.makedirs(respuesta_dir, exist_ok=True) + + for response in responses: + file_path = os.path.join(respuesta_dir, os.path.basename(response.valor.name)) + + file_content = default_storage.open(response.valor.name).read() + with open(file_path, 'wb') as f: + f.write(file_content) + + # Actualizar el campo en la respuesta + response.archivo = os.path.join('archivos', 'respuestas', os.path.basename(response.valor.name)) + response.save() + diff --git a/cosiap_api/dynamic_tables/migrations/0001_creacion_tabla_dynamictablereport.py b/cosiap_api/dynamic_tables/migrations/0001_initial.py similarity index 79% rename from cosiap_api/dynamic_tables/migrations/0001_creacion_tabla_dynamictablereport.py rename to cosiap_api/dynamic_tables/migrations/0001_initial.py index 8e6c9b1..8628246 100644 --- a/cosiap_api/dynamic_tables/migrations/0001_creacion_tabla_dynamictablereport.py +++ b/cosiap_api/dynamic_tables/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.0.6 on 2024-07-10 16:40 +# Generated by Django 5.0.7 on 2024-08-12 17:25 from django.db import migrations, models @@ -20,9 +20,7 @@ class Migration(migrations.Migration): ('exclude_columns', models.JSONField(blank=True, null=True)), ('search_query', models.CharField(blank=True, max_length=100, null=True)), ('filters', models.JSONField(blank=True, null=True)), + ('exclude_filters', models.JSONField(blank=True, null=True)), ], - options={ - 'unique_together': {('model_name', 'columns', 'exclude_columns', 'search_query', 'filters')}, - }, ), ] diff --git a/cosiap_api/dynamic_tables/migrations/0002_columna_excludefilters_dynamictablereport.py b/cosiap_api/dynamic_tables/migrations/0002_columna_excludefilters_dynamictablereport.py deleted file mode 100644 index 2a0743c..0000000 --- a/cosiap_api/dynamic_tables/migrations/0002_columna_excludefilters_dynamictablereport.py +++ /dev/null @@ -1,22 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-16 17:08 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_tables', '0001_creacion_tabla_dynamictablereport'), - ] - - operations = [ - migrations.AlterUniqueTogether( - name='dynamictablereport', - unique_together=set(), - ), - migrations.AddField( - model_name='dynamictablereport', - name='exlcude_filters', - field=models.JSONField(blank=True, null=True), - ), - ] diff --git a/cosiap_api/dynamic_tables/migrations/0003_columna_excludefilters_dynamictablereport.py b/cosiap_api/dynamic_tables/migrations/0003_columna_excludefilters_dynamictablereport.py deleted file mode 100644 index 0903dd7..0000000 --- a/cosiap_api/dynamic_tables/migrations/0003_columna_excludefilters_dynamictablereport.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-16 17:09 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_tables', '0002_columna_excludefilters_dynamictablereport'), - ] - - operations = [ - migrations.RenameField( - model_name='dynamictablereport', - old_name='exlcude_filters', - new_name='exclude_filters', - ), - ] diff --git a/cosiap_api/dynamic_tables/views.py b/cosiap_api/dynamic_tables/views.py index ce82311..e994cc2 100644 --- a/cosiap_api/dynamic_tables/views.py +++ b/cosiap_api/dynamic_tables/views.py @@ -10,6 +10,8 @@ from datetime import timedelta, datetime from notificaciones.mensajes import Mensaje from django.core.exceptions import ValidationError import json +from django.utils.encoding import force_bytes +from django.utils.http import urlsafe_base64_encode class DynamicTableAPIView(BasePermissionAPIView): @@ -249,4 +251,44 @@ class ReporteAPIView(BasePermissionAPIView): configuracion.delete() Mensaje.success(response_data, 'Reporte eliminado con éxito.') - return Response(response_data, status=status.HTTP_204_NO_CONTENT) \ No newline at end of file + return Response(response_data, status=status.HTTP_204_NO_CONTENT) + + +class Exportar_CSV(BasePermissionAPIView): + ''' + APIView para manejar la exportación de los datos según una configuración de reporte. + ''' + permission_classes_list = [IsAuthenticated, es_admin] + model_name = None + + def get_configuracion_reporte(self, request): + ''' + Recuperar la configuración del reporte de la request si se ha enviado. + ''' + if request.method == 'GET': + reporte_data = request.query_params.get('reporte', '{}') + try: + reporte_data = json.loads(reporte_data) + except ValueError: + reporte_data = {} + + if reporte_data: + return DynamicTableReport(**reporte_data) + else: + return None + + + def get(self, request, *args, **kwargs): + ''' + Método get para obtener el archivo zip con todos los documentos solicitados. + ''' + + configuracion = self.get_configuracion_reporte(request) + reporte = DynamicTable(instance=configuracion) + data = reporte.get_data(configuracion) + # creamos un UID encriptado para la creación del ZIP único del usuario. + uid = urlsafe_base64_encode(force_bytes(request.user.pk)) + + # exportamos los datos + response = reporte.export_to_csv_and_zip(data, uid) + return response diff --git a/cosiap_api/modalidades/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py b/cosiap_api/modalidades/migrations/0001_initial.py similarity index 87% rename from cosiap_api/modalidades/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py rename to cosiap_api/modalidades/migrations/0001_initial.py index 8728738..2264755 100644 --- a/cosiap_api/modalidades/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py +++ b/cosiap_api/modalidades/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.0.6 on 2024-07-09 16:29 +# Generated by Django 5.0.7 on 2024-08-12 17:25 import common.nombres_archivos import django.db.models.deletion @@ -10,6 +10,7 @@ class Migration(migrations.Migration): initial = True dependencies = [ + ('dynamic_forms', '0001_initial'), ] operations = [ @@ -22,6 +23,7 @@ class Migration(migrations.Migration): ('descripcion', models.TextField(verbose_name='Descripción')), ('mostrar', models.BooleanField(default=True)), ('archivado', models.BooleanField(default=False)), + ('dynamic_form', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='dynamic_forms.dynamicform', verbose_name='Formulario')), ], options={ 'ordering': ['nombre'], diff --git a/cosiap_api/modalidades/migrations/0002_relacion_modalidad_dynamicForm.py b/cosiap_api/modalidades/migrations/0002_relacion_modalidad_dynamicForm.py deleted file mode 100644 index 2b02d55..0000000 --- a/cosiap_api/modalidades/migrations/0002_relacion_modalidad_dynamicForm.py +++ /dev/null @@ -1,20 +0,0 @@ -# Generated by Django 5.0.7 on 2024-07-29 18:23 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0002_creacion_modelos_formularios_dinamicos_02'), - ('modalidades', '0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes'), - ] - - operations = [ - migrations.AddField( - model_name='modalidad', - name='dynamic_form', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='dynamic_forms.dynamicform', verbose_name='Modalidad'), - ), - ] diff --git a/cosiap_api/modalidades/migrations/0003_merge_migrations.py b/cosiap_api/modalidades/migrations/0003_merge_migrations.py deleted file mode 100644 index 6e82323..0000000 --- a/cosiap_api/modalidades/migrations/0003_merge_migrations.py +++ /dev/null @@ -1,20 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-08 16:14 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dynamic_forms', '0006_merge_migrations'), - ('modalidades', '0002_relacion_modalidad_dynamicForm'), - ] - - operations = [ - migrations.AlterField( - model_name='modalidad', - name='dynamic_form', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='dynamic_forms.dynamicform', verbose_name='Formulario'), - ), - ] diff --git a/cosiap_api/notificaciones/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py b/cosiap_api/notificaciones/migrations/0001_initial.py similarity index 76% rename from cosiap_api/notificaciones/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py rename to cosiap_api/notificaciones/migrations/0001_initial.py index 67c313b..1fabcd3 100644 --- a/cosiap_api/notificaciones/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py +++ b/cosiap_api/notificaciones/migrations/0001_initial.py @@ -1,7 +1,5 @@ -# Generated by Django 5.0.6 on 2024-07-09 16:29 +# Generated by Django 5.0.7 on 2024-08-12 17:25 -import django.db.models.deletion -from django.conf import settings from django.db import migrations, models @@ -10,7 +8,6 @@ class Migration(migrations.Migration): initial = True dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ @@ -24,7 +21,6 @@ class Migration(migrations.Migration): ('urlName', models.CharField(blank=True, max_length=255, null=True)), ('urlArgs', models.JSONField(blank=True, null=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), - ('usuario', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Usuario')), ], options={ 'ordering': ['usuario', '-timestamp'], @@ -35,7 +31,6 @@ class Migration(migrations.Migration): fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('timestamp', models.DateTimeField(auto_now=True, verbose_name='Fecha y hora de última apertura')), - ('usuario', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Usuario')), ], options={ 'verbose_name': 'Última apertura de bandeja de entrada', diff --git a/cosiap_api/notificaciones/migrations/0002_initial.py b/cosiap_api/notificaciones/migrations/0002_initial.py new file mode 100644 index 0000000..7064621 --- /dev/null +++ b/cosiap_api/notificaciones/migrations/0002_initial.py @@ -0,0 +1,28 @@ +# Generated by Django 5.0.7 on 2024-08-12 17:25 + +import django.db.models.deletion +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('notificaciones', '0001_initial'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.AddField( + model_name='notificacion', + name='usuario', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Usuario'), + ), + migrations.AddField( + model_name='notifinboxlastopened', + name='usuario', + field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Usuario'), + ), + ] diff --git a/cosiap_api/solicitudes/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py b/cosiap_api/solicitudes/migrations/0001_initial.py similarity index 52% rename from cosiap_api/solicitudes/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py rename to cosiap_api/solicitudes/migrations/0001_initial.py index e6b15ac..303082f 100644 --- a/cosiap_api/solicitudes/migrations/0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes.py +++ b/cosiap_api/solicitudes/migrations/0001_initial.py @@ -1,7 +1,8 @@ -# Generated by Django 5.0.6 on 2024-07-09 16:29 +# Generated by Django 5.0.7 on 2024-08-12 17:25 import common.nombres_archivos import common.validadores_campos +import django.db.models.deletion from django.db import migrations, models @@ -10,6 +11,7 @@ class Migration(migrations.Migration): initial = True dependencies = [ + ('modalidades', '0001_initial'), ] operations = [ @@ -37,4 +39,18 @@ class Migration(migrations.Migration): 'ordering': ['pk'], }, ), + migrations.CreateModel( + name='Solicitud', + fields=[ + ('status', models.CharField(max_length=255, verbose_name='Status')), + ('solicitud_n', models.AutoField(primary_key=True, serialize=False, verbose_name='Num. Solicitud')), + ('monto_solicitado', models.FloatField(default=0.0, verbose_name='Monto Solicitado')), + ('monto_aprobado', models.FloatField(default=0.0, verbose_name='Monto Aprobado')), + ('timestamp', models.DateTimeField(auto_now_add=True, verbose_name='Timestamp')), + ('observacion', models.TextField(blank=True, null=True, verbose_name='Observación')), + ('convenio', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='solicitudes.convenio', verbose_name='Convenio')), + ('minuta', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='solicitudes.minuta', verbose_name='Minuta')), + ('modalidad', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='modalidades.modalidad', verbose_name='Modalidad')), + ], + ), ] diff --git a/cosiap_api/solicitudes/migrations/0002_creacion_modelo_solicitud.py b/cosiap_api/solicitudes/migrations/0002_creacion_modelo_solicitud.py deleted file mode 100644 index d73871c..0000000 --- a/cosiap_api/solicitudes/migrations/0002_creacion_modelo_solicitud.py +++ /dev/null @@ -1,31 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-11 03:20 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('modalidades', '0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes'), - ('solicitudes', '0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes'), - ('users', '0010_creacion_modulos_admin_formats_forms_tables_modalidades_solicitudes'), - ] - - operations = [ - migrations.CreateModel( - name='Solicitud', - fields=[ - ('status', models.CharField(max_length=255)), - ('solicitud_n', models.AutoField(primary_key=True, serialize=False)), - ('monto_solicitado', models.FloatField(default=0.0)), - ('monto_aprobado', models.FloatField(default=0.0)), - ('timestamp', models.DateTimeField(auto_now_add=True)), - ('observacion', models.TextField(blank=True, null=True)), - ('convenio', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='solicitudes.convenio')), - ('minuta', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='solicitudes.minuta')), - ('modalidad', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='modalidades.modalidad')), - ('solicitante', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.solicitante')), - ], - ), - ] diff --git a/cosiap_api/solicitudes/migrations/0002_initial.py b/cosiap_api/solicitudes/migrations/0002_initial.py new file mode 100644 index 0000000..2d810fe --- /dev/null +++ b/cosiap_api/solicitudes/migrations/0002_initial.py @@ -0,0 +1,22 @@ +# Generated by Django 5.0.7 on 2024-08-12 17:25 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('solicitudes', '0001_initial'), + ('users', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='solicitud', + name='solicitante', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.solicitante', verbose_name='Solicitante'), + ), + ] diff --git a/cosiap_api/solicitudes/migrations/0003_merge_migrations.py b/cosiap_api/solicitudes/migrations/0003_merge_migrations.py deleted file mode 100644 index af79491..0000000 --- a/cosiap_api/solicitudes/migrations/0003_merge_migrations.py +++ /dev/null @@ -1,66 +0,0 @@ -# Generated by Django 5.0.7 on 2024-07-19 20:31 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('modalidades', '0001_creacion_inicial_modulos_dynamic_formats__modalidades__solicitudes'), - ('solicitudes', '0002_creacion_modelo_solicitud'), - ('users', '0012_llenando_catalogos_municipios_estados'), - ] - - operations = [ - migrations.AlterField( - model_name='solicitud', - name='convenio', - field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='solicitudes.convenio', verbose_name='Convenio'), - ), - migrations.AlterField( - model_name='solicitud', - name='minuta', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='solicitudes.minuta', verbose_name='Minuta'), - ), - migrations.AlterField( - model_name='solicitud', - name='modalidad', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='modalidades.modalidad', verbose_name='Modalidad'), - ), - migrations.AlterField( - model_name='solicitud', - name='monto_aprobado', - field=models.FloatField(default=0.0, verbose_name='Monto Aprobado'), - ), - migrations.AlterField( - model_name='solicitud', - name='monto_solicitado', - field=models.FloatField(default=0.0, verbose_name='Monto Solicitado'), - ), - migrations.AlterField( - model_name='solicitud', - name='observacion', - field=models.TextField(blank=True, null=True, verbose_name='Observación'), - ), - migrations.AlterField( - model_name='solicitud', - name='solicitante', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='users.solicitante', verbose_name='Solicitante'), - ), - migrations.AlterField( - model_name='solicitud', - name='solicitud_n', - field=models.AutoField(primary_key=True, serialize=False, verbose_name='Num. Solicitud'), - ), - migrations.AlterField( - model_name='solicitud', - name='status', - field=models.CharField(max_length=255, verbose_name='Status'), - ), - migrations.AlterField( - model_name='solicitud', - name='timestamp', - field=models.DateTimeField(auto_now_add=True, verbose_name='Timestamp'), - ), - ] diff --git a/cosiap_api/solicitudes/urls.py b/cosiap_api/solicitudes/urls.py index 9506e8a..c69c3a8 100644 --- a/cosiap_api/solicitudes/urls.py +++ b/cosiap_api/solicitudes/urls.py @@ -1,6 +1,7 @@ from . import views from django.urls import path from django.contrib.auth import views as auth_views +from dynamic_tables.views import Exportar_CSV app_name = 'solicitudes' @@ -11,4 +12,5 @@ urlpatterns = [ path('historial//', views.HistorialAPIVIew.as_view(), name='historial_pk'), path('reportes/', views.ReportesSolicitudesAPIView.as_view(), name='reportes_solicitudes'), path('reportes//', views.ReportesSolicitudesAPIView.as_view(), name='reportes_solicitudes_pk'), + path('reportes/exportar/', Exportar_CSV.as_view(), name='exportar_reportes'), ] \ No newline at end of file diff --git a/cosiap_api/users/migrations/0001_initial.py b/cosiap_api/users/migrations/0001_initial.py index 6a5c6c3..95249b0 100644 --- a/cosiap_api/users/migrations/0001_initial.py +++ b/cosiap_api/users/migrations/0001_initial.py @@ -1,6 +1,9 @@ -# Generated by Django 5.0.6 on 2024-06-14 16:14 +# Generated by Django 5.0.7 on 2024-08-12 17:25 +import common.nombres_archivos import django.core.validators +import django.db.models.deletion +from django.conf import settings from django.db import migrations, models @@ -24,7 +27,7 @@ class Migration(migrations.Migration): ('curp', models.CharField(max_length=18, unique=True, validators=[django.core.validators.RegexValidator('^[A-Z]{1}[AEIOU]{1}[A-Z]{2}[0-9]{2}(0[1-9]|1[0-2])(0[1-9]|1[0-9]|2[0-9]|3[0-1])[HM]{1}(AS|BC|BS|CC|CS|CH|CL|CM|DF|DG|GT|GR|HG|JC|MC|MN|MS|NT|NL|OC|PL|QT|QR|SP|SL|SR|TC|TS|TL|VZ|YN|ZS|NE)[B-DF-HJ-NP-TV-Z]{3}[0-9A-Z]{1}[0-9]{1}$', 'Debe ser un CURP valido.')], verbose_name='CURP')), ('email', models.EmailField(max_length=254, unique=True, verbose_name='E-mail')), ('is_staff', models.BooleanField(default=False)), - ('is_active', models.BooleanField(default=True)), + ('is_active', models.BooleanField(default=False)), ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.group', verbose_name='groups')), ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.permission', verbose_name='user permissions')), ], @@ -32,4 +35,61 @@ class Migration(migrations.Migration): 'ordering': ['-is_superuser', 'id'], }, ), + migrations.CreateModel( + name='DatosBancarios', + fields=[ + ('id', models.BigAutoField(primary_key=True, serialize=False)), + ('nombre_banco', models.CharField(max_length=20, verbose_name='Nombre banco')), + ('cuenta_bancaria', models.CharField(max_length=10, verbose_name='No. Cuenta')), + ('clabe_bancaria', models.CharField(max_length=16, verbose_name='Clabe bancaria')), + ('doc_estado_cuenta', models.FileField(blank=True, null=True, upload_to=common.nombres_archivos.nombre_archivo_estado_cuenta, verbose_name='Estado de cuenta')), + ('doc_constancia_sat', models.FileField(blank=True, null=True, upload_to=common.nombres_archivos.nombre_archivo_sat, verbose_name='Constancia Situación Fiscal')), + ('codigo_postal_fiscal', models.CharField(max_length=5, verbose_name='Código Postal Físcal')), + ('regimen', models.CharField(choices=[('1', 'Régimen Simplificado de Confianza'), ('2', 'Sueldos y salarios e ingresos asimilados a salarios'), ('3', 'Régimen de Actividades Empresariales y Profesionales'), ('4', 'Régimen de Incorporación Fiscal'), ('5', 'Enajenación de bienes'), ('6', 'Régimen de Actividades Empresariales con ingresos a través de Plataformas Tecnológicas'), ('7', 'Régimen de Arrendamiento'), ('8', 'Intereses'), ('9', 'Obtención de premios'), ('10', 'Dividendos'), ('11', 'Demás Ingresos'), ('12', 'Sin obligaciones fiscales')], max_length=255)), + ], + ), + migrations.CreateModel( + name='Estado', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('nombre', models.CharField(max_length=191, verbose_name='Nombre Estado')), + ('created_at', models.DateTimeField(auto_now_add=True, null=True, verbose_name='created_at')), + ('updated_at', models.DateTimeField(auto_now=True, null=True, verbose_name='updated_at')), + ], + ), + migrations.CreateModel( + name='Municipio', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('cve_mun', models.PositiveIntegerField(verbose_name='Clave Municipio')), + ('nombre', models.CharField(max_length=191, verbose_name='Nombre Municipio')), + ('created_at', models.DateTimeField(auto_now_add=True, null=True, verbose_name='created_at')), + ('updated_at', models.DateTimeField(auto_now=True, null=True, verbose_name='updated_at')), + ('estado', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='users.estado', verbose_name='Estado')), + ], + options={ + 'ordering': ['estado', 'nombre'], + 'unique_together': {('estado', 'cve_mun')}, + }, + ), + migrations.CreateModel( + name='Solicitante', + fields=[ + ('usuario_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), + ('ap_paterno', models.CharField(max_length=50, null=True, verbose_name='Apellido Paterno')), + ('ap_materno', models.CharField(blank=True, max_length=50, null=True, verbose_name='Apellido Materno')), + ('telefono', models.CharField(max_length=10, null=True, verbose_name='Teléfono')), + ('RFC', models.CharField(max_length=13, null=True, unique=True, validators=[django.core.validators.RegexValidator('^([A-ZÑ&]{3,4}) ?(?:- ?)?(\\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\\d|3[01])) ?(?:- ?)?([A-Z\\d]{2})([A\\d])$', 'Debe ser un RFC válido.')], verbose_name='RFC')), + ('direccion', models.CharField(max_length=255, null=True, verbose_name='Dirección')), + ('codigo_postal', models.CharField(max_length=5, null=True, verbose_name='Código Postal')), + ('poblacion', models.CharField(max_length=255, null=True, verbose_name='Población')), + ('INE', models.FileField(null=True, upload_to=common.nombres_archivos.nombre_archivo_ine, verbose_name='INE')), + ('datos_bancarios', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='users.datosbancarios', verbose_name='Datos Bancarios')), + ('municipio', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='users.municipio', verbose_name='Municipio')), + ], + options={ + 'abstract': False, + }, + bases=('users.usuario',), + ), ] diff --git a/cosiap_api/users/migrations/0002_campo_toke_usuario.py b/cosiap_api/users/migrations/0002_campo_toke_usuario.py deleted file mode 100644 index 9882691..0000000 --- a/cosiap_api/users/migrations/0002_campo_toke_usuario.py +++ /dev/null @@ -1,24 +0,0 @@ -# Generated by Django 5.0.6 on 2024-06-27 20:34 - -import uuid -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='usuario', - name='token_verificacion', - field=models.UUIDField(default=uuid.uuid4, editable=False), - ), - migrations.AlterField( - model_name='usuario', - name='is_active', - field=models.BooleanField(default=False), - ), - ] diff --git a/cosiap_api/users/migrations/0003_eliminacion_campo_token_usuario.py b/cosiap_api/users/migrations/0003_eliminacion_campo_token_usuario.py deleted file mode 100644 index fa82d61..0000000 --- a/cosiap_api/users/migrations/0003_eliminacion_campo_token_usuario.py +++ /dev/null @@ -1,17 +0,0 @@ -# Generated by Django 5.0.6 on 2024-06-28 18:28 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0002_campo_toke_usuario'), - ] - - operations = [ - migrations.RemoveField( - model_name='usuario', - name='token_verificacion', - ), - ] diff --git a/cosiap_api/users/migrations/0004_creacion_modelo_solicitante.py b/cosiap_api/users/migrations/0004_creacion_modelo_solicitante.py deleted file mode 100644 index 4080e62..0000000 --- a/cosiap_api/users/migrations/0004_creacion_modelo_solicitante.py +++ /dev/null @@ -1,34 +0,0 @@ -# Generated by Django 5.0.6 on 2024-06-28 20:07 - -import django.core.validators -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0003_eliminacion_campo_token_usuario'), - ] - - operations = [ - migrations.CreateModel( - name='Solicitante', - fields=[ - ('usuario_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), - ('ap_paterno', models.CharField(max_length=50, verbose_name='Apellido Paterno')), - ('ap_materno', models.CharField(blank=True, max_length=50, null=True, verbose_name='Apellido Materno')), - ('telefono', models.CharField(max_length=10, verbose_name='Teléfono')), - ('RFC', models.CharField(max_length=13, unique=True, validators=[django.core.validators.RegexValidator('^[A-Z&Ñ]{4}\\d{6}[A-Z0-9]{3}$', 'Debe ser un RFC válido.')], verbose_name='RFC')), - ('direccion', models.CharField(max_length=255, verbose_name='Dirección')), - ('codigo_postal', models.CharField(max_length=5, verbose_name='Código Postal')), - ('poblacion', models.CharField(max_length=255, verbose_name='Población')), - ('INE', models.FileField(blank=True, null=True, upload_to='ine_files/', verbose_name='INE')), - ], - options={ - 'abstract': False, - }, - bases=('users.usuario',), - ), - ] diff --git a/cosiap_api/users/migrations/0005_creacion_tablas_estado_municipio.py b/cosiap_api/users/migrations/0005_creacion_tablas_estado_municipio.py deleted file mode 100644 index 3637f75..0000000 --- a/cosiap_api/users/migrations/0005_creacion_tablas_estado_municipio.py +++ /dev/null @@ -1,44 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-01 17:45 - -import django.core.validators -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0004_creacion_modelo_solicitante'), - ] - - operations = [ - migrations.CreateModel( - name='Estado', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('nombre', models.CharField(max_length=191, verbose_name='Nombre Estado')), - ('created_at', models.DateTimeField(auto_now_add=True, null=True, verbose_name='created_at')), - ('updated_at', models.DateTimeField(auto_now=True, null=True, verbose_name='updated_at')), - ], - ), - migrations.AlterField( - model_name='solicitante', - name='RFC', - field=models.CharField(max_length=13, unique=True, validators=[django.core.validators.RegexValidator('^([A-ZÑ&]{3,4}) ?(?:- ?)?(\\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\\d|3[01])) ?(?:- ?)?([A-Z\\d]{2})([A\\d])$', 'Debe ser un RFC válido.')], verbose_name='RFC'), - ), - migrations.CreateModel( - name='Municipio', - fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('cve_mun', models.PositiveIntegerField(verbose_name='Clave Municipio')), - ('nombre', models.CharField(max_length=191, verbose_name='Nombre Municipio')), - ('created_at', models.DateTimeField(auto_now_add=True, null=True, verbose_name='created_at')), - ('updated_at', models.DateTimeField(auto_now=True, null=True, verbose_name='updated_at')), - ('estado', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='users.estado', verbose_name='Estado')), - ], - options={ - 'ordering': ['estado', 'nombre'], - 'unique_together': {('estado', 'cve_mun')}, - }, - ), - ] diff --git a/cosiap_api/users/migrations/0006_crear_tabla_datosbancarios.py b/cosiap_api/users/migrations/0006_crear_tabla_datosbancarios.py deleted file mode 100644 index db56c36..0000000 --- a/cosiap_api/users/migrations/0006_crear_tabla_datosbancarios.py +++ /dev/null @@ -1,26 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-01 18:12 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0005_creacion_tablas_estado_municipio'), - ] - - operations = [ - migrations.CreateModel( - name='DatosBancarios', - fields=[ - ('id', models.BigAutoField(primary_key=True, serialize=False)), - ('nombre_banco', models.CharField(max_length=20, verbose_name='Nombre banco')), - ('cuenta_bancaria', models.CharField(max_length=10, verbose_name='No. Cuenta')), - ('clabe_bancaria', models.CharField(max_length=16, verbose_name='Clabe bancaria')), - ('doc_estado_cuenta', models.FileField(blank=True, null=True, upload_to='estados_cuenta_files/', verbose_name='Estado de cuenta')), - ('doc_constancia_sat', models.FileField(blank=True, null=True, upload_to='constancias_sat_files/', verbose_name='Constancia Situación Fiscal')), - ('codigo_postal_fiscal', models.CharField(max_length=5, verbose_name='Código Postal Físcal')), - ('regimen', models.CharField(max_length=20)), - ], - ), - ] diff --git a/cosiap_api/users/migrations/0007_relacion_banco_municipio_solicitante.py b/cosiap_api/users/migrations/0007_relacion_banco_municipio_solicitante.py deleted file mode 100644 index 5a2f88d..0000000 --- a/cosiap_api/users/migrations/0007_relacion_banco_municipio_solicitante.py +++ /dev/null @@ -1,24 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-01 18:30 - -import django.db.models.deletion -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0006_crear_tabla_datosbancarios'), - ] - - operations = [ - migrations.AddField( - model_name='solicitante', - name='datos_bancarios', - field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='users.datosbancarios', verbose_name='Datos Bancarios'), - ), - migrations.AddField( - model_name='solicitante', - name='municipio', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='users.municipio', verbose_name='Municipio'), - ), - ] diff --git a/cosiap_api/users/migrations/0008_agregar_choices_regimenfiscal.py b/cosiap_api/users/migrations/0008_agregar_choices_regimenfiscal.py deleted file mode 100644 index 49817a7..0000000 --- a/cosiap_api/users/migrations/0008_agregar_choices_regimenfiscal.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-01 19:41 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0007_relacion_banco_municipio_solicitante'), - ] - - operations = [ - migrations.AlterField( - model_name='datosbancarios', - name='regimen', - field=models.CharField(choices=[('1', 'Régminen Simplificado de Confianza'), ('2', 'Sueldos y salarios e ingresos asimilados a salarios'), ('3', 'Régimen de Actividades Empresariales y Profesionales'), ('4', 'Régimen de Incorporación Fiscal'), ('5', 'Enajenación de bienes'), ('6', 'Régimen de Actividades Empresariales con ingresos a través de Plataformas Tecnológicas'), ('7', 'Régimen de Arrendamiento'), ('8', 'Intereses'), ('9', 'Obtención de premios'), ('10', 'Dividendos'), ('11', 'Demás Ingresos'), ('12', 'Sin obligaciones fiscales')], max_length=255), - ), - ] diff --git a/cosiap_api/users/migrations/0009_solicitante_campos_no_vacios.py b/cosiap_api/users/migrations/0009_solicitante_campos_no_vacios.py deleted file mode 100644 index 0ee3656..0000000 --- a/cosiap_api/users/migrations/0009_solicitante_campos_no_vacios.py +++ /dev/null @@ -1,60 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-04 18:40 - -import common.nombres_archivos -import django.core.validators -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0008_agregar_choices_regimenfiscal'), - ] - - operations = [ - migrations.AlterField( - model_name='datosbancarios', - name='doc_constancia_sat', - field=models.FileField(blank=True, null=True, upload_to=common.nombres_archivos.nombre_archivo_sat, verbose_name='Constancia Situación Fiscal'), - ), - migrations.AlterField( - model_name='datosbancarios', - name='doc_estado_cuenta', - field=models.FileField(blank=True, null=True, upload_to=common.nombres_archivos.nombre_archivo_estado_cuenta, verbose_name='Estado de cuenta'), - ), - migrations.AlterField( - model_name='solicitante', - name='INE', - field=models.FileField(blank=True, null=True, upload_to=common.nombres_archivos.nombre_archivo_ine, verbose_name='INE'), - ), - migrations.AlterField( - model_name='solicitante', - name='RFC', - field=models.CharField(max_length=13, null=True, unique=True, validators=[django.core.validators.RegexValidator('^([A-ZÑ&]{3,4}) ?(?:- ?)?(\\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\\d|3[01])) ?(?:- ?)?([A-Z\\d]{2})([A\\d])$', 'Debe ser un RFC válido.')], verbose_name='RFC'), - ), - migrations.AlterField( - model_name='solicitante', - name='ap_paterno', - field=models.CharField(max_length=50, null=True, verbose_name='Apellido Paterno'), - ), - migrations.AlterField( - model_name='solicitante', - name='codigo_postal', - field=models.CharField(max_length=5, null=True, verbose_name='Código Postal'), - ), - migrations.AlterField( - model_name='solicitante', - name='direccion', - field=models.CharField(max_length=255, null=True, verbose_name='Dirección'), - ), - migrations.AlterField( - model_name='solicitante', - name='poblacion', - field=models.CharField(max_length=255, null=True, verbose_name='Población'), - ), - migrations.AlterField( - model_name='solicitante', - name='telefono', - field=models.CharField(max_length=10, null=True, verbose_name='Teléfono'), - ), - ] diff --git a/cosiap_api/users/migrations/0010_creacion_modulos_admin_formats_forms_tables_modalidades_solicitudes.py b/cosiap_api/users/migrations/0010_creacion_modulos_admin_formats_forms_tables_modalidades_solicitudes.py deleted file mode 100644 index a3de9c8..0000000 --- a/cosiap_api/users/migrations/0010_creacion_modulos_admin_formats_forms_tables_modalidades_solicitudes.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-05 20:27 - -import common.nombres_archivos -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0009_solicitante_campos_no_vacios'), - ] - - operations = [ - migrations.AlterField( - model_name='solicitante', - name='INE', - field=models.FileField(null=True, upload_to=common.nombres_archivos.nombre_archivo_ine, verbose_name='INE'), - ), - ] diff --git a/cosiap_api/users/migrations/0011_columna_excludefilters_dynamictablereport.py b/cosiap_api/users/migrations/0011_columna_excludefilters_dynamictablereport.py deleted file mode 100644 index b9e8414..0000000 --- a/cosiap_api/users/migrations/0011_columna_excludefilters_dynamictablereport.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-16 17:08 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0010_creacion_modulos_admin_formats_forms_tables_modalidades_solicitudes'), - ] - - operations = [ - migrations.AlterField( - model_name='datosbancarios', - name='regimen', - field=models.CharField(choices=[('1', 'Régimen Simplificado de Confianza'), ('2', 'Sueldos y salarios e ingresos asimilados a salarios'), ('3', 'Régimen de Actividades Empresariales y Profesionales'), ('4', 'Régimen de Incorporación Fiscal'), ('5', 'Enajenación de bienes'), ('6', 'Régimen de Actividades Empresariales con ingresos a través de Plataformas Tecnológicas'), ('7', 'Régimen de Arrendamiento'), ('8', 'Intereses'), ('9', 'Obtención de premios'), ('10', 'Dividendos'), ('11', 'Demás Ingresos'), ('12', 'Sin obligaciones fiscales')], max_length=255), - ), - ] diff --git a/cosiap_api/users/migrations/0012_llenando_catalogos_municipios_estados.py b/cosiap_api/users/migrations/0012_llenando_catalogos_municipios_estados.py deleted file mode 100644 index 9441ceb..0000000 --- a/cosiap_api/users/migrations/0012_llenando_catalogos_municipios_estados.py +++ /dev/null @@ -1,2570 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-16 18:14 - -from django.db import migrations -import csv -import sys -import traceback -from io import StringIO - -CSV_ESTADO_DATA = """MAPA,CVE_ENT,NOM_ENT,NOM_ABR,POB_TOTAL,POB_MASCULINA,POB_FEMENINA,TOTAL DE VIVIENDAS HABITADAS -"01","01","Aguascalientes","Ags.","1425607","696683","728924","386671" -"02","02","Baja California","BC","3769020","1900589","1868431","1149563" -"03","03","Baja California Sur","BCS","798447","405879","392568","240660" -"04","04","Campeche","Camp.","928363","456939","471424","260824" -"05","05","Coahuila de Zaragoza","Coah.","3146771","1563669","1583102","901249" -"06","06","Colima","Col.","731391","360622","370769","227050" -"07","07","Chiapas","Chis.","5543828","2705947","2837881","1351630" -"08","08","Chihuahua","Chih.","3741869","1853822","1888047","1146915" -"09","09","Ciudad de México","CDMX","9209944","4404927","4805017","2757433" -"10","10","Durango","Dgo.","1832650","904866","927784","493989" -"11","11","Guanajuato","Gto.","6166934","2996454","3170480","1587234" -"12","12","Guerrero","Gro.","3540685","1700612","1840073","942509" -"13","13","Hidalgo","Hgo.","3082841","1481379","1601462","857462" -"14","14","Jalisco","Jal.","8348151","4098455","4249696","2332218" -"15","15","México","Mex.","16992418","8251295","8741123","4569533" -"16","16","Michoacán de Ocampo","Mich.","4748846","2306341","2442505","1285469" -"17","17","Morelos","Mor.","1971520","950847","1020673","560941" -"18","18","Nayarit","Nay.","1235456","612278","623178","361596" -"19","19","Nuevo León","NL","5784442","2890950","2893492","1655690" -"20","20","Oaxaca","Oax.","4132148","1974843","2157305","1126544" -"21","21","Puebla","Pue.","6583278","3160115","3423163","1713865" -"22","22","Querétaro","Qro.","2368467","1156820","1211647","668771" -"23","23","Quintana Roo","Q. Roo","1857985","936779","921206","575635" -"24","24","San Luis Potosí","SLP","2822255","1372451","1449804","775016" -"25","25","Sinaloa","Sin.","3026943","1494815","1532128","855271" -"26","26","Sonora","Son.","2944840","1472197","1472643","876826" -"27","27","Tabasco","Tab.","2402598","1173671","1228927","669414" -"28","28","Tamaulipas","Tamps.","3527735","1736140","1791595","1069380" -"29","29","Tlaxcala","Tlax.","1342977","649894","693083","341656" -"30","30","Veracruz de Ignacio de la Llave","Ver.","8062579","3871774","4190805","2391262" -"31","31","Yucatán","Yuc.","2320898","1140279","1180619","658351" -"32","32","Zacatecas","Zac.","1622138","791058","831080","442835" -""" - -CSV_MUNICIPIO_DATA = """MAPA,CVE_ENT,NOM_ENT,NOM_ABR,CVE_MUN,NOM_MUN,CVE_CAB,NOM_CAB,POB_TOTAL,POB_MASCULINA,POB_FEMENINA,TOTAL DE VIVIENDAS HABITADAS -"01","01","Aguascalientes","Ags.","001","Aguascalientes","0001","Aguascalientes","948990","462073","486917","266942" -"01","01","Aguascalientes","Ags.","002","Asientos","0001","Asientos","51536","25261","26275","12544" -"01","01","Aguascalientes","Ags.","003","Calvillo","0001","Calvillo","58250","28563","29687","15556" -"01","01","Aguascalientes","Ags.","004","Cosío","0001","Cosío","17000","8292","8708","3938" -"01","01","Aguascalientes","Ags.","005","Jesús María","0001","Jesús María","129929","64219","65710","33229" -"01","01","Aguascalientes","Ags.","006","Pabellón de Arteaga","0001","Pabellón de Arteaga","47646","23377","24269","11470" -"01","01","Aguascalientes","Ags.","007","Rincón de Romos","0001","Rincón de Romos","57369","28101","29268","13584" -"01","01","Aguascalientes","Ags.","008","San José de Gracia","0001","San José de Gracia","9552","4532","5020","2381" -"01","01","Aguascalientes","Ags.","009","Tepezalá","0001","Tepezalá","22485","11114","11371","5425" -"01","01","Aguascalientes","Ags.","010","El Llano","0001","Palo Alto","20853","10446","10407","5211" -"01","01","Aguascalientes","Ags.","011","San Francisco de los Romo","0001","San Francisco de los Romo","61997","30705","31292","16391" -"02","02","Baja California","BC","001","Ensenada","0001","Ensenada","443807","221307","222500","139968" -"02","02","Baja California","BC","002","Mexicali","0001","Mexicali","1049792","529248","520544","330500" -"02","02","Baja California","BC","003","Tecate","0001","Tecate","108440","57130","51310","31176" -"02","02","Baja California","BC","004","Tijuana","0001","Tijuana","1922523","968740","953783","577011" -"02","02","Baja California","BC","005","Playas de Rosarito","0001","Playas de Rosarito","126890","64386","62504","38135" -"02","02","Baja California","BC","006","San Quintín","0001","San Quintín","117568","59778","57790","32773" -"02","02","Baja California","BC","007","San Felipe","0001","San Felipe","-","-","-","-" -"03","03","Baja California Sur","BCS","001","Comondú","0001","Ciudad Constitución","73021","36804","36217","22242" -"03","03","Baja California Sur","BCS","002","Mulegé","0001","Santa Rosalía","64022","33071","30951","19436" -"03","03","Baja California Sur","BCS","003","La Paz","0001","La Paz","292241","145803","146438","91366" -"03","03","Baja California Sur","BCS","008","Los Cabos","0001","San José del Cabo","351111","180944","170167","101981" -"03","03","Baja California Sur","BCS","009","Loreto","0001","Loreto","18052","9257","8795","5635" -"04","04","Campeche","Camp.","001","Calkiní","0001","Calkiní","59232","29170","30062","15289" -"04","04","Campeche","Camp.","002","Campeche","0001","San Francisco de Campeche","294077","141555","152522","85353" -"04","04","Campeche","Camp.","003","Carmen","0001","Ciudad del Carmen","248845","123043","125802","72119" -"04","04","Campeche","Camp.","004","Champotón","0001","Champotón","78170","39030","39140","21474" -"04","04","Campeche","Camp.","005","Hecelchakán","0001","Hecelchakán","31917","15713","16204","8292" -"04","04","Campeche","Camp.","006","Hopelchén","0001","Hopelchén","42140","21328","20812","10243" -"04","04","Campeche","Camp.","007","Palizada","0001","Palizada","8683","4423","4260","2546" -"04","04","Campeche","Camp.","008","Tenabo","0001","Tenabo","11452","5797","5655","3066" -"04","04","Campeche","Camp.","009","Escárcega","0001","Escárcega","59923","29468","30455","16837" -"04","04","Campeche","Camp.","010","Calakmul","0001","Xpujil","31714","16101","15613","8037" -"04","04","Campeche","Camp.","011","Candelaria","0001","Candelaria","46913","23674","23239","13294" -"04","04","Campeche","Camp.","012","Seybaplaya","0001","Seybaplaya","15297","7637","7660","4274" -"04","04","Campeche","Camp.","013","Dzitbalché","0001","Dzitbalché","-","-","-","-" -"05","05","Coahuila de Zaragoza","Coah.","001","Abasolo","0001","Abasolo","1022","535","487","363" -"05","05","Coahuila de Zaragoza","Coah.","002","Acuña","0001","Ciudad Acuña","163058","81943","81115","47246" -"05","05","Coahuila de Zaragoza","Coah.","003","Allende","0001","Allende","23056","11446","11610","6852" -"05","05","Coahuila de Zaragoza","Coah.","004","Arteaga","0001","Arteaga","29578","14955","14623","8639" -"05","05","Coahuila de Zaragoza","Coah.","005","Candela","0001","Candela","1643","843","800","471" -"05","05","Coahuila de Zaragoza","Coah.","006","Castaños","0001","Castaños","29128","14596","14532","8382" -"05","05","Coahuila de Zaragoza","Coah.","007","Cuatro Ciénegas","0001","Cuatro Ciénegas de Carranza","12715","6365","6350","3777" -"05","05","Coahuila de Zaragoza","Coah.","008","Escobedo","0001","Escobedo","3047","1529","1518","908" -"05","05","Coahuila de Zaragoza","Coah.","009","Francisco I. Madero","0001","Francisco I. Madero  ","59035","29217","29818","15901" -"05","05","Coahuila de Zaragoza","Coah.","010","Frontera","0001","Frontera","82409","41209","41200","23371" -"05","05","Coahuila de Zaragoza","Coah.","011","General Cepeda","0001","General Cepeda","11898","6091","5807","3407" -"05","05","Coahuila de Zaragoza","Coah.","012","Guerrero","0001","Guerrero","1643","883","760","523" -"05","05","Coahuila de Zaragoza","Coah.","013","Hidalgo","0001","Hidalgo","1735","896","839","492" -"05","05","Coahuila de Zaragoza","Coah.","014","Jiménez","0001","Jiménez","9502","4857","4645","2729" -"05","05","Coahuila de Zaragoza","Coah.","015","Juárez","0001","Juárez","1584","786","798","486" -"05","05","Coahuila de Zaragoza","Coah.","016","Lamadrid","0001","Lamadrid","1764","928","836","553" -"05","05","Coahuila de Zaragoza","Coah.","017","Matamoros","0001","Matamoros","118337","58692","59645","31207" -"05","05","Coahuila de Zaragoza","Coah.","018","Monclova","0001","Monclova","237951","118058","119893","69906" -"05","05","Coahuila de Zaragoza","Coah.","019","Morelos","0001","Morelos","7928","3935","3993","2335" -"05","05","Coahuila de Zaragoza","Coah.","020","Múzquiz","0001","Ciudad Melchor Múzquiz","71627","35856","35771","20663" -"05","05","Coahuila de Zaragoza","Coah.","021","Nadadores","0001","Nadadores","6539","3243","3296","1974" -"05","05","Coahuila de Zaragoza","Coah.","022","Nava","0001","Nava","33129","16599","16530","9379" -"05","05","Coahuila de Zaragoza","Coah.","023","Ocampo","0001","Ocampo","9642","4992","4650","2672" -"05","05","Coahuila de Zaragoza","Coah.","024","Parras","0001","Parras de la Fuente","44472","22534","21938","12735" -"05","05","Coahuila de Zaragoza","Coah.","025","Piedras Negras","0001","Piedras Negras","176327","88711","87616","51732" -"05","05","Coahuila de Zaragoza","Coah.","026","Progreso","0001","Progreso","3239","1634","1605","995" -"05","05","Coahuila de Zaragoza","Coah.","027","Ramos Arizpe","0001","Ramos Arizpe","122243","62722","59521","34397" -"05","05","Coahuila de Zaragoza","Coah.","028","Sabinas","0001","Sabinas","64811","32237","32574","20215" -"05","05","Coahuila de Zaragoza","Coah.","029","Sacramento","0001","Sacramento","2471","1242","1229","725" -"05","05","Coahuila de Zaragoza","Coah.","030","Saltillo","0001","Saltillo","879958","437792","442166","242663" -"05","05","Coahuila de Zaragoza","Coah.","031","San Buenaventura","0001","San Buenaventura","24759","12275","12484","7627" -"05","05","Coahuila de Zaragoza","Coah.","032","San Juan de Sabinas","0014","Nueva Rosita","42260","20922","21338","13101" -"05","05","Coahuila de Zaragoza","Coah.","033","San Pedro","0001","San Pedro","101041","49949","51092","26588" -"05","05","Coahuila de Zaragoza","Coah.","034","Sierra Mojada","0001","Sierra Mojada","6744","3527","3217","1937" -"05","05","Coahuila de Zaragoza","Coah.","035","Torreón","0001","Torreón","720848","351753","369095","215134" -"05","05","Coahuila de Zaragoza","Coah.","036","Viesca","0001","Viesca","20305","10230","10075","5356" -"05","05","Coahuila de Zaragoza","Coah.","037","Villa Unión","0001","Villa Unión","6188","3130","3058","1820" -"05","05","Coahuila de Zaragoza","Coah.","038","Zaragoza","0001","Zaragoza","13135","6557","6578","3988" -"06","06","Colima","Col.","001","Armería","0001","Ciudad de Armería","27626","13940","13686","8236" -"06","06","Colima","Col.","002","Colima","0001","Colima","157048","76155","80893","50440" -"06","06","Colima","Col.","003","Comala","0001","Comala","21661","10893","10768","6309" -"06","06","Colima","Col.","004","Coquimatlán","0001","Coquimatlán","20837","10484","10353","6192" -"06","06","Colima","Col.","005","Cuauhtémoc","0001","Cuauhtémoc","31267","15729","15538","9332" -"06","06","Colima","Col.","006","Ixtlahuacán","0001","Ixtlahuacán","5623","2887","2736","1713" -"06","06","Colima","Col.","007","Manzanillo","0001","Manzanillo","191031","95117","95914","59803" -"06","06","Colima","Col.","008","Minatitlán","0001","Minatitlán","10231","5234","4997","2914" -"06","06","Colima","Col.","009","Tecomán","0001","Tecomán","116305","57829","58476","33020" -"06","06","Colima","Col.","010","Villa de Álvarez","0001","Ciudad de Villa de Álvarez","149762","72354","77408","49091" -"07","07","Chiapas","Chis.","001","Acacoyagua","0001","Acacoyagua","17994","8997","8997","4416" -"07","07","Chiapas","Chis.","002","Acala","0001","Acala","21187","10414","10773","5431" -"07","07","Chiapas","Chis.","003","Acapetahua","0001","Acapetahua","26899","13185","13714","7608" -"07","07","Chiapas","Chis.","004","Altamirano","0001","Altamirano","36160","18032","18128","7973" -"07","07","Chiapas","Chis.","005","Amatán","0001","Amatán","24512","12328","12184","5665" -"07","07","Chiapas","Chis.","006","Amatenango de la Frontera","0001","Amatenango de la Frontera","31735","15428","16307","7580" -"07","07","Chiapas","Chis.","007","Amatenango del Valle","0001","Amatenango del Valle","11283","5373","5910","2561" -"07","07","Chiapas","Chis.","008","Ángel Albino Corzo","0001","Jaltenango de la Paz (Ángel Albino Corzo)","31947","15905","16042","7299" -"07","07","Chiapas","Chis.","009","Arriaga","0001","Arriaga","41135","19954","21181","12362" -"07","07","Chiapas","Chis.","010","Bejucal de Ocampo","0001","Bejucal de Ocampo","7365","3652","3713","1567" -"07","07","Chiapas","Chis.","011","Bella Vista","0001","Bella Vista","20157","10002","10155","4523" -"07","07","Chiapas","Chis.","012","Berriozábal","0001","Berriozábal","64632","31914","32718","16200" -"07","07","Chiapas","Chis.","013","Bochil","0001","Bochil","37263","18208","19055","8413" -"07","07","Chiapas","Chis.","014","El Bosque","0001","El Bosque","24273","11711","12562","5051" -"07","07","Chiapas","Chis.","015","Cacahoatán","0001","Cacahoatán","50112","24427","25685","12150" -"07","07","Chiapas","Chis.","016","Catazajá","0001","Catazajá","17619","8882","8737","4788" -"07","07","Chiapas","Chis.","017","Cintalapa de Figueroa","0001","Cintalapa de Figueroa","88106","43677","44429","21775" -"07","07","Chiapas","Chis.","018","Coapilla","0001","Coapilla","9900","4873","5027","2447" -"07","07","Chiapas","Chis.","019","Comitán de Domínguez","0001","Comitán de Domínguez","166178","79440","86738","44451" -"07","07","Chiapas","Chis.","020","La Concordia","0001","La Concordia","49920","25133","24787","12263" -"07","07","Chiapas","Chis.","021","Copainalá","0001","Copainalá","22192","10846","11346","6057" -"07","07","Chiapas","Chis.","022","Chalchihuitán","0001","Chalchihuitán","21915","10873","11042","4819" -"07","07","Chiapas","Chis.","023","Chamula","0001","Chamula","101967","46948","55019","22655" -"07","07","Chiapas","Chis.","024","Chanal","0001","Chanal","13678","6734","6944","2189" -"07","07","Chiapas","Chis.","025","Chapultenango","0001","Chapultenango","7472","3735","3737","1724" -"07","07","Chiapas","Chis.","026","Chenalhó","0001","Chenalhó","47371","23194","24177","9505" -"07","07","Chiapas","Chis.","027","Chiapa de Corzo","0001","Chiapa de Corzo","112075","55166","56909","29653" -"07","07","Chiapas","Chis.","028","Chiapilla","0001","Chiapilla","6156","3106","3050","1627" -"07","07","Chiapas","Chis.","029","Chicoasén","0001","Chicoasén","5402","2701","2701","1476" -"07","07","Chiapas","Chis.","030","Chicomuselo","0001","Chicomuselo","36785","18139","18646","8809" -"07","07","Chiapas","Chis.","031","Chilón","0001","Chilón","137262","67317","69945","26658" -"07","07","Chiapas","Chis.","032","Escuintla","0001","Escuintla","30896","15214","15682","7882" -"07","07","Chiapas","Chis.","033","Francisco León","0042","Rivera el Viejo Carmen","7245","3673","3572","1511" -"07","07","Chiapas","Chis.","034","Frontera Comalapa","0001","Frontera Comalapa","80897","39159","41738","20195" -"07","07","Chiapas","Chis.","035","Frontera Hidalgo","0001","Frontera Hidalgo","14556","7176","7380","3695" -"07","07","Chiapas","Chis.","036","La Grandeza","0001","La Grandeza","7701","3765","3936","1538" -"07","07","Chiapas","Chis.","037","Huehuetán","0001","Huehuetán","36333","17711","18622","9564" -"07","07","Chiapas","Chis.","038","Huixtán","0001","Huixtán","22975","11264","11711","4600" -"07","07","Chiapas","Chis.","039","Huitiupán","0001","Huitiupán","27893","13995","13898","6279" -"07","07","Chiapas","Chis.","040","Huixtla","0001","Huixtla","53242","26079","27163","14285" -"07","07","Chiapas","Chis.","041","La Independencia","0001","La Independencia","46409","22577","23832","11089" -"07","07","Chiapas","Chis.","042","Ixhuatán","0001","Ixhuatán","11377","5539","5838","2611" -"07","07","Chiapas","Chis.","043","Ixtacomitán","0001","Ixtacomitán","10961","5419","5542","2659" -"07","07","Chiapas","Chis.","044","Ixtapa","0001","Ixtapa","28999","14286","14713","6169" -"07","07","Chiapas","Chis.","045","Ixtapangajoya","0001","Ixtapangajoya","6284","3122","3162","1535" -"07","07","Chiapas","Chis.","046","Jiquipilas","0001","Jiquipilas","41063","20370","20693","11277" -"07","07","Chiapas","Chis.","047","Jitotol","0001","Jitotol","24966","12427","12539","5443" -"07","07","Chiapas","Chis.","048","Juárez","0001","Juárez","21807","10772","11035","6098" -"07","07","Chiapas","Chis.","049","Larráinzar","0001","Larráinzar","31259","15204","16055","5989" -"07","07","Chiapas","Chis.","050","La Libertad","0001","La Libertad","5232","2607","2625","1586" -"07","07","Chiapas","Chis.","051","Mapastepec","0001","Mapastepec","46130","22781","23349","12777" -"07","07","Chiapas","Chis.","052","Las Margaritas","0001","Las Margaritas","141027","68891","72136","28906" -"07","07","Chiapas","Chis.","053","Mazapa de Madero","0001","Mazapa de Madero","7901","3895","4006","1695" -"07","07","Chiapas","Chis.","054","Mazatán","0001","Mazatán","28250","14017","14233","7818" -"07","07","Chiapas","Chis.","055","Metapa","0001","Metapa de Domínguez","5876","2756","3120","1574" -"07","07","Chiapas","Chis.","056","Mitontic","0001","Mitontic","13755","6733","7022","2712" -"07","07","Chiapas","Chis.","057","Motozintla","0001","Motozintla de Mendoza","76398","37425","38973","16617" -"07","07","Chiapas","Chis.","058","Nicolás Ruíz","0001","Nicolás Ruíz","4765","2440","2325","1049" -"07","07","Chiapas","Chis.","059","Ocosingo","0001","Ocosingo","234661","115769","118892","46891" -"07","07","Chiapas","Chis.","060","Ocotepec","0001","Ocotepec","14088","6879","7209","2929" -"07","07","Chiapas","Chis.","061","Ocozocoautla de Espinosa","0001","Ocozocoautla de Espinosa","97397","48070","49327","23915" -"07","07","Chiapas","Chis.","062","Ostuacán","0001","Ostuacán","18469","9188","9281","4487" -"07","07","Chiapas","Chis.","063","Osumacinta","0001","Osumacinta","3983","1979","2004","1042" -"07","07","Chiapas","Chis.","064","Oxchuc","0001","Oxchuc","54932","27514","27418","10105" -"07","07","Chiapas","Chis.","065","Palenque","0001","Palenque","132265","65076","67189","33719" -"07","07","Chiapas","Chis.","066","Pantelhó","0001","Pantelhó","26391","12950","13441","4931" -"07","07","Chiapas","Chis.","067","Pantepec","0001","Pantepec","12266","6054","6212","2938" -"07","07","Chiapas","Chis.","068","Pichucalco","0001","Pichucalco","31919","15652","16267","8604" -"07","07","Chiapas","Chis.","069","Pijijiapan","0001","Pijijiapan","51193","25111","26082","14937" -"07","07","Chiapas","Chis.","070","El Porvenir","0001","El Porvenir de Velasco Suárez","12263","6104","6159","2403" -"07","07","Chiapas","Chis.","071","Villa Comaltitlán","0001","Villa Comaltitlán","30297","15578","14719","7682" -"07","07","Chiapas","Chis.","072","Pueblo Nuevo Solistahuacán","0001","Pueblo Nuevo Solistahuacán","29636","14432","15204","6506" -"07","07","Chiapas","Chis.","073","Rayón","0001","Rayón","10866","5348","5518","2407" -"07","07","Chiapas","Chis.","074","Reforma","0001","Reforma","44829","21908","22921","12523" -"07","07","Chiapas","Chis.","075","Las Rosas","0001","Las Rosas","28829","14134","14695","7232" -"07","07","Chiapas","Chis.","076","Sabanilla","0001","Sabanilla","29889","14921","14968","6775" -"07","07","Chiapas","Chis.","077","Salto de Agua","0001","Salto de Agua","64251","31846","32405","14760" -"07","07","Chiapas","Chis.","078","San Cristóbal de las Casas","0001","San Cristóbal de las Casas","215874","102292","113582","52718" -"07","07","Chiapas","Chis.","079","San Fernando","0001","San Fernando","41793","20872","20921","10483" -"07","07","Chiapas","Chis.","080","Siltepec","0001","Siltepec","25937","13026","12911","5208" -"07","07","Chiapas","Chis.","081","Simojovel","0001","Simojovel de Allende","52935","25888","27047","10718" -"07","07","Chiapas","Chis.","082","Sitalá","0001","Sitalá","15518","7624","7894","3222" -"07","07","Chiapas","Chis.","083","Socoltenango","0001","Socoltenango","19092","9413","9679","5061" -"07","07","Chiapas","Chis.","084","Solosuchiapa","0001","Solosuchiapa","8561","4344","4217","2060" -"07","07","Chiapas","Chis.","085","Soyaló","0001","Soyaló","10890","5465","5425","2567" -"07","07","Chiapas","Chis.","086","Suchiapa","0001","Suchiapa","25627","12756","12871","6362" -"07","07","Chiapas","Chis.","087","Suchiate","0001","Ciudad Hidalgo","41672","20481","21191","11045" -"07","07","Chiapas","Chis.","088","Sunuapa","0001","Sunuapa","2308","1175","1133","561" -"07","07","Chiapas","Chis.","089","Tapachula","0001","Tapachula de Córdova y Ordóñez","353706","171610","182096","96307" -"07","07","Chiapas","Chis.","090","Tapalapa","0001","Tapalapa","4547","2209","2338","1102" -"07","07","Chiapas","Chis.","091","Tapilula","0001","Tapilula","13592","6562","7030","3462" -"07","07","Chiapas","Chis.","092","Tecpatán","0001","Tecpatán","21426","10664","10762","5804" -"07","07","Chiapas","Chis.","093","Tenejapa","0001","Tenejapa","48162","23308","24854","9207" -"07","07","Chiapas","Chis.","094","Teopisca","0001","Teopisca","49499","23944","25555","11179" -"07","07","Chiapas","Chis.","096","Tila","0001","Tila","83505","41701","41804","17999" -"07","07","Chiapas","Chis.","097","Tonalá","0001","Tonalá","91913","45281","46632","25574" -"07","07","Chiapas","Chis.","098","Totolapa","0001","Totolapa","7211","3640","3571","1735" -"07","07","Chiapas","Chis.","099","La Trinitaria","0001","La Trinitaria","83111","40112","42999","20865" -"07","07","Chiapas","Chis.","100","Tumbalá","0001","Tumbalá","38025","18507","19518","7972" -"07","07","Chiapas","Chis.","101","Tuxtla Gutiérrez","0001","Tuxtla Gutiérrez","604147","287524","316623","166210" -"07","07","Chiapas","Chis.","102","Tuxtla Chico","0001","Tuxtla Chico","41024","19777","21247","10633" -"07","07","Chiapas","Chis.","103","Tuzantán","0001","Tuzantán","30302","14900","15402","7711" -"07","07","Chiapas","Chis.","104","Tzimol","0001","Tzimol","16560","8118","8442","4671" -"07","07","Chiapas","Chis.","105","Unión Juárez","0001","Unión Juárez","16008","7847","8161","3938" -"07","07","Chiapas","Chis.","106","Venustiano Carranza","0001","Venustiano Carranza","67292","33499","33793","17906" -"07","07","Chiapas","Chis.","107","Villa Corzo","0001","Villa Corzo","65643","32345","33298","16824" -"07","07","Chiapas","Chis.","108","Villaflores","0001","Villaflores","109536","53808","55728","29277" -"07","07","Chiapas","Chis.","109","Yajalón","0001","Yajalón","40285","19590","20695","8753" -"07","07","Chiapas","Chis.","110","San Lucas","0001","San Lucas","7526","3792","3734","1831" -"07","07","Chiapas","Chis.","111","Zinacantán","0001","Zinacantán","45373","21115","24258","9129" -"07","07","Chiapas","Chis.","112","San Juan Cancuc","0001","San Juan Cancuc","37948","18517","19431","6960" -"07","07","Chiapas","Chis.","113","Aldama","0001","Aldama","8480","4040","4440","1653" -"07","07","Chiapas","Chis.","114","Benemérito de las Américas","0001","Benemérito de las Américas","23603","11814","11789","5476" -"07","07","Chiapas","Chis.","115","Maravilla Tenejapa","0001","Maravilla Tenejapa","14714","7332","7382","2952" -"07","07","Chiapas","Chis.","116","Marqués de Comillas","0001","Zamora Pico de Oro","12892","6498","6394","2898" -"07","07","Chiapas","Chis.","117","Montecristo de Guerrero","0001","Montecristo de Guerrero","8412","4215","4197","1829" -"07","07","Chiapas","Chis.","118","San Andrés Duraznal","0001","San Andrés Duraznal","6047","2928","3119","1311" -"07","07","Chiapas","Chis.","119","Santiago el Pinar","0001","Santiago el Pinar","4959","2451","2508","911" -"07","07","Chiapas","Chis.","120","Capitán Luis Ángel Vidal","0001","Capitán Luis Ángel Vidal","4315","2274","2041","805" -"07","07","Chiapas","Chis.","121","Rincón Chamula San Pedro","0001","Rincón Chamula","8718","4027","4691","1847" -"07","07","Chiapas","Chis.","122","El Parral","0001","El Parral","15587","7591","7996","4266" -"07","07","Chiapas","Chis.","123","Emiliano Zapata","0001","20 de Noviembre","10783","5371","5412","2839" -"07","07","Chiapas","Chis.","124","Mezcalapa","0001","Raudales Malpaso","23847","11699","12148","5811" -"07","07","Chiapas","Chis.","125","Honduras de la Sierra","0001","Honduras de la Sierra","11650","5897","5753","2344" -"08","08","Chihuahua","Chih.","001","Ahumada","0001","Miguel Ahumada","14635","7377","7258","4228" -"08","08","Chihuahua","Chih.","002","Aldama","0001","Juan Aldama","26047","12842","13205","8242" -"08","08","Chihuahua","Chih.","003","Allende","0001","Valle de Ignacio Allende","8487","4256","4231","2746" -"08","08","Chihuahua","Chih.","004","Aquiles Serdán","0001","Santa Eulalia","24344","13494","10850","7104" -"08","08","Chihuahua","Chih.","005","Ascensión","0001","Ascensión","26093","13231","12862","7925" -"08","08","Chihuahua","Chih.","006","Bachíniva","0001","Bachíniva","5807","2942","2865","2003" -"08","08","Chihuahua","Chih.","007","Balleza","0001","Mariano Balleza","16440","8142","8298","4319" -"08","08","Chihuahua","Chih.","008","Batopilas de Manuel Gómez Morín","0001","Batopilas de Manuel Gómez Morín","11270","5597","5673","2825" -"08","08","Chihuahua","Chih.","009","Bocoyna","0001","Bocoyna","23351","10978","12373","7560" -"08","08","Chihuahua","Chih.","010","Buenaventura","0001","San Buenaventura","25146","12509","12637","7829" -"08","08","Chihuahua","Chih.","011","Camargo","0001","Santa Rosalía de Camargo","49499","24447","25052","15683" -"08","08","Chihuahua","Chih.","012","Carichí","0001","Carichí","8113","3996","4117","2233" -"08","08","Chihuahua","Chih.","013","Casas Grandes","0001","Casas Grandes","11815","6025","5790","3709" -"08","08","Chihuahua","Chih.","014","Coronado","0001","José Esteban Coronado","2034","1059","975","673" -"08","08","Chihuahua","Chih.","015","Coyame del Sotol","0001","Santiago de Coyame","1230","633","597","445" -"08","08","Chihuahua","Chih.","016","La Cruz","0001","La Cruz","3704","1881","1823","1167" -"08","08","Chihuahua","Chih.","017","Cuauhtémoc","0001","Cuauhtémoc","180638","88417","92221","56947" -"08","08","Chihuahua","Chih.","018","Cusihuiriachi","0001","Cusihuiriachi","5099","2660","2439","1700" -"08","08","Chihuahua","Chih.","019","Chihuahua","0001","Chihuahua","937674","457240","480434","300900" -"08","08","Chihuahua","Chih.","020","Chínipas","0001","Chínipas de Almada","6222","3156","3066","1790" -"08","08","Chihuahua","Chih.","021","Delicias","0001","Delicias","150506","73827","76679","47701" -"08","08","Chihuahua","Chih.","022","Dr. Belisario Domínguez","0001","San Lorenzo","2456","1244","1212","958" -"08","08","Chihuahua","Chih.","023","Galeana","0001","Hermenegildo Galeana","6656","3299","3357","1821" -"08","08","Chihuahua","Chih.","024","Santa Isabel","0001","Santa Isabel","3791","1864","1927","1290" -"08","08","Chihuahua","Chih.","025","Gómez Farías","0001","Valentín Gómez Farías","7023","3465","3558","2550" -"08","08","Chihuahua","Chih.","026","Gran Morelos","0001","San Nicolás de Carretas","2448","1251","1197","913" -"08","08","Chihuahua","Chih.","027","Guachochi","0001","Guachochi","50180","24298","25882","13522" -"08","08","Chihuahua","Chih.","028","Guadalupe","0001","Guadalupe","4237","2133","2104","1366" -"08","08","Chihuahua","Chih.","029","Guadalupe y Calvo","0001","Guadalupe y Calvo","50514","25178","25336","12232" -"08","08","Chihuahua","Chih.","030","Guazapares","0001","Témoris","8196","4105","4091","2223" -"08","08","Chihuahua","Chih.","031","Guerrero","0001","Ciudad Guerrero","35473","17702","17771","11829" -"08","08","Chihuahua","Chih.","032","Hidalgo del Parral","0001","Hidalgo del Parral","116662","56247","60415","34430" -"08","08","Chihuahua","Chih.","033","Huejotitán","0001","Huejotitán","824","411","413","281" -"08","08","Chihuahua","Chih.","034","Ignacio Zaragoza","0001","Ignacio Zaragoza","5196","2605","2591","1953" -"08","08","Chihuahua","Chih.","035","Janos","0001","Janos","11005","5760","5245","3238" -"08","08","Chihuahua","Chih.","036","Jiménez","0001","José Mariano Jiménez","40859","20188","20671","11839" -"08","08","Chihuahua","Chih.","037","Juárez","0001","Juárez","1512450","756977","755473","449602" -"08","08","Chihuahua","Chih.","038","Julimes","0001","Julimes","4980","2517","2463","1686" -"08","08","Chihuahua","Chih.","039","López","0001","Octaviano López","4122","2117","2005","1287" -"08","08","Chihuahua","Chih.","040","Madera","0001","Madera","25144","12406","12738","8133" -"08","08","Chihuahua","Chih.","041","Maguarichi","0001","Maguarichi","1302","621","681","453" -"08","08","Chihuahua","Chih.","042","Manuel Benavides","0001","Manuel Benavides","1178","626","552","469" -"08","08","Chihuahua","Chih.","043","Matachí","0001","Matachí","2742","1414","1328","990" -"08","08","Chihuahua","Chih.","044","Matamoros","0001","Mariano Matamoros","4314","2163","2151","1375" -"08","08","Chihuahua","Chih.","045","Meoqui","0001","Pedro Meoqui","44853","22381","22472","13843" -"08","08","Chihuahua","Chih.","046","Morelos","0001","Morelos","7266","3665","3601","1874" -"08","08","Chihuahua","Chih.","047","Moris","0001","Moris","4447","2334","2113","1344" -"08","08","Chihuahua","Chih.","048","Namiquipa","0001","Namiquipa","22712","11390","11322","7750" -"08","08","Chihuahua","Chih.","049","Nonoava","0001","Nonoava","2757","1377","1380","841" -"08","08","Chihuahua","Chih.","050","Nuevo Casas Grandes","0001","Nuevo Casas Grandes","65753","32139","33614","20945" -"08","08","Chihuahua","Chih.","051","Ocampo","0001","Melchor Ocampo","8127","4110","4017","2379" -"08","08","Chihuahua","Chih.","052","Ojinaga","0001","Manuel Ojinaga","24534","12193","12341","8223" -"08","08","Chihuahua","Chih.","053","Praxedis G. Guerrero","0001","Praxedis G. Guerrero","5111","2599","2512","1679" -"08","08","Chihuahua","Chih.","054","Riva Palacio","0001","San Andrés","7695","3893","3802","2180" -"08","08","Chihuahua","Chih.","055","Rosales","0001","Santa Cruz de Rosales","16776","8415","8361","5321" -"08","08","Chihuahua","Chih.","056","Rosario","0001","Valle del Rosario","2079","1082","997","681" -"08","08","Chihuahua","Chih.","057","San Francisco de Borja","0001","San Francisco de Borja","2197","1152","1045","800" -"08","08","Chihuahua","Chih.","058","San Francisco de Conchos","0001","San Francisco de Conchos","2696","1401","1295","929" -"08","08","Chihuahua","Chih.","059","San Francisco del Oro","0001","San Francisco del Oro","5004","2484","2520","1559" -"08","08","Chihuahua","Chih.","060","Santa Bárbara","0001","Santa Bárbara","11582","5817","5765","3453" -"08","08","Chihuahua","Chih.","061","Satevó","0001","San Francisco Javier de Satevó","3414","1805","1609","1222" -"08","08","Chihuahua","Chih.","062","Saucillo","0001","Saucillo","29862","14828","15034","9048" -"08","08","Chihuahua","Chih.","063","Temósachic","0001","Temósachic","5320","2666","2654","1862" -"08","08","Chihuahua","Chih.","064","El Tule","0001","El Tule","1448","726","722","472" -"08","08","Chihuahua","Chih.","065","Urique","0001","Urique","17043","8358","8685","4794" -"08","08","Chihuahua","Chih.","066","Uruachi","0001","Uruachi","6512","3288","3224","1882" -"08","08","Chihuahua","Chih.","067","Valle de Zaragoza","0001","Valle de Zaragoza","4775","2419","2356","1665" -"09","09","Ciudad de México","CDMX","002","Azcapotzalco","----","","432205","204950","227255","134204" -"09","09","Ciudad de México","CDMX","003","Coyoacán","----","","614447","289110","325337","191646" -"09","09","Ciudad de México","CDMX","004","Cuajimalpa de Morelos","----","","217686","104149","113537","60442" -"09","09","Ciudad de México","CDMX","005","Gustavo A. Madero","----","","1173351","563874","609477","340301" -"09","09","Ciudad de México","CDMX","006","Iztacalco","----","","404695","192352","212343","117740" -"09","09","Ciudad de México","CDMX","007","Iztapalapa","----","","1835486","887651","947835","504456" -"09","09","Ciudad de México","CDMX","008","La Magdalena Contreras","----","","247622","118287","129335","68107" -"09","09","Ciudad de México","CDMX","009","Milpa Alta","----","","152685","74371","78314","39101" -"09","09","Ciudad de México","CDMX","010","Álvaro Obregón","----","","759137","361007","398130","219445" -"09","09","Ciudad de México","CDMX","011","Tláhuac","----","","392313","190190","202123","106964" -"09","09","Ciudad de México","CDMX","012","Tlalpan","----","","699928","334877","365051","202483" -"09","09","Ciudad de México","CDMX","013","Xochimilco","----","","442178","215452","226726","117159" -"09","09","Ciudad de México","CDMX","014","Benito Juárez","----","","434153","202121","232032","176175" -"09","09","Ciudad de México","CDMX","015","Cuauhtémoc","----","","545884","260951","284933","196593" -"09","09","Ciudad de México","CDMX","016","Miguel Hidalgo","----","","414470","195467","219003","146828" -"09","09","Ciudad de México","CDMX","017","Venustiano Carranza","----","","443704","210118","233586","135789" -"10","10","Durango","Dgo.","001","Canatlán","0001","Canatlán","31454","15651","15803","8733" -"10","10","Durango","Dgo.","002","Canelas","0001","Canelas","4321","2210","2111","1165" -"10","10","Durango","Dgo.","003","Coneto de Comonfort","0001","Coneto de Comonfort","4084","2064","2020","1058" -"10","10","Durango","Dgo.","004","Cuencamé","0001","Tres Veces Heroica Cuencamé de Ceniceros","34955","17515","17440","9339" -"10","10","Durango","Dgo.","005","Durango","0001","Victoria de Durango","688697","335412","353285","186870" -"10","10","Durango","Dgo.","006","General Simón Bolívar","0001","General Simón Bolívar","10038","4981","5057","2631" -"10","10","Durango","Dgo.","007","Gómez Palacio","0001","Gómez Palacio","372750","184537","188213","102752" -"10","10","Durango","Dgo.","008","Guadalupe Victoria","0001","Guadalupe Victoria","36695","18060","18635","10084" -"10","10","Durango","Dgo.","009","Guanaceví","0001","Guanaceví","9869","5153","4716","2883" -"10","10","Durango","Dgo.","010","Hidalgo","0001","Villa Hidalgo","3843","1936","1907","1186" -"10","10","Durango","Dgo.","011","Indé","0001","Indé","4748","2374","2374","1442" -"10","10","Durango","Dgo.","012","Lerdo","0001","Lerdo","163313","80856","82457","44727" -"10","10","Durango","Dgo.","013","Mapimí","0001","Mapimí","26932","13470","13462","6936" -"10","10","Durango","Dgo.","014","Mezquital","0001","San Francisco del Mezquital","48583","23858","24725","9340" -"10","10","Durango","Dgo.","015","Nazas","0001","Nazas","12894","6525","6369","3522" -"10","10","Durango","Dgo.","016","Nombre de Dios","0001","Nombre de Dios","19060","9508","9552","5298" -"10","10","Durango","Dgo.","017","Ocampo","0001","Villa Ocampo","8003","4092","3911","2646" -"10","10","Durango","Dgo.","018","El Oro","0001","Santa María del Oro","10384","5183","5201","3258" -"10","10","Durango","Dgo.","019","Otáez","0001","Otáez","4924","2592","2332","1153" -"10","10","Durango","Dgo.","020","Pánuco de Coronado","0001","Francisco I. Madero","12656","6303","6353","3622" -"10","10","Durango","Dgo.","021","Peñón Blanco","0001","Peñón Blanco","11118","5612","5506","3028" -"10","10","Durango","Dgo.","022","Poanas","0001","Villa Unión","25623","12619","13004","6857" -"10","10","Durango","Dgo.","023","Pueblo Nuevo","0001","El Salto","51269","25382","25887","12077" -"10","10","Durango","Dgo.","024","Rodeo","0001","Rodeo","12818","6504","6314","3472" -"10","10","Durango","Dgo.","025","San Bernardo","0001","San Bernardo","2837","1529","1308","977" -"10","10","Durango","Dgo.","026","San Dimas","0001","Tayoltita","17333","8871","8462","4532" -"10","10","Durango","Dgo.","027","San Juan de Guadalupe","0001","San Juan de Guadalupe","5251","2621","2630","1473" -"10","10","Durango","Dgo.","028","San Juan del Río","0001","San Juan del Río del Centauro del Norte","12013","5921","6092","3125" -"10","10","Durango","Dgo.","029","San Luis del Cordero","0001","San Luis del Cordero","2103","1066","1037","590" -"10","10","Durango","Dgo.","030","San Pedro del Gallo","0001","San Pedro del Gallo","1633","851","782","492" -"10","10","Durango","Dgo.","031","Santa Clara","0001","Santa Clara","6727","3354","3373","1886" -"10","10","Durango","Dgo.","032","Santiago Papasquiaro","0001","Santiago Papasquiaro","49207","24947","24260","13589" -"10","10","Durango","Dgo.","033","Súchil","0001","Súchil","6917","3393","3524","1859" -"10","10","Durango","Dgo.","034","Tamazula","0001","Tamazula de Victoria","26300","13506","12794","6108" -"10","10","Durango","Dgo.","035","Tepehuanes","0001","Santa Catarina de Tepehuanes","11378","5749","5629","3473" -"10","10","Durango","Dgo.","036","Tlahualilo","0001","Tlahualilo de Zaragoza","21143","10537","10606","5686" -"10","10","Durango","Dgo.","037","Topia","0001","Topia","9320","4759","4561","2316" -"10","10","Durango","Dgo.","038","Vicente Guerrero","0001","Vicente Guerrero","23476","11480","11996","6372" -"10","10","Durango","Dgo.","039","Nuevo Ideal","0001","Nuevo Ideal","27981","13885","14096","7432" -"11","11","Guanajuato","Gto.","001","Abasolo","0001","Abasolo","92040","44853","47187","22284" -"11","11","Guanajuato","Gto.","002","Acámbaro","0001","Acámbaro","108697","52208","56489","30192" -"11","11","Guanajuato","Gto.","003","San Miguel de Allende","0001","San Miguel de Allende","174615","83077","91538","44573" -"11","11","Guanajuato","Gto.","004","Apaseo el Alto","0001","Apaseo el Alto","63392","30550","32842","16171" -"11","11","Guanajuato","Gto.","005","Apaseo el Grande","0001","Apaseo el Grande","117883","57253","60630","31269" -"11","11","Guanajuato","Gto.","006","Atarjea","0001","Atarjea","5296","2583","2713","1559" -"11","11","Guanajuato","Gto.","007","Celaya","0001","Celaya","521169","253045","268124","143512" -"11","11","Guanajuato","Gto.","008","Manuel Doblado","0001","Ciudad Manuel Doblado","41240","19777","21463","11186" -"11","11","Guanajuato","Gto.","009","Comonfort","0001","Comonfort","82216","38733","43483","19541" -"11","11","Guanajuato","Gto.","010","Coroneo","0001","Coroneo","11083","5270","5813","3135" -"11","11","Guanajuato","Gto.","011","Cortazar","0001","Cortazar","97928","47535","50393","25388" -"11","11","Guanajuato","Gto.","012","Cuerámaro","0001","Cuerámaro","30857","14867","15990","8163" -"11","11","Guanajuato","Gto.","013","Doctor Mora","0001","Doctor Mora","27390","13133","14257","6764" -"11","11","Guanajuato","Gto.","014","Dolores Hidalgo Cuna de la Independencia Nacional","0001","Dolores Hidalgo Cuna de la Independencia Nacional","163038","76711","86327","38976" -"11","11","Guanajuato","Gto.","015","Guanajuato","0001","Guanajuato","194500","94038","100462","51688" -"11","11","Guanajuato","Gto.","016","Huanímaro","0001","Huanímaro","21128","9991","11137","5372" -"11","11","Guanajuato","Gto.","017","Irapuato","0001","Irapuato","592953","290770","302183","151961" -"11","11","Guanajuato","Gto.","018","Jaral del Progreso","0001","Jaral del Progreso","38782","18847","19935","9998" -"11","11","Guanajuato","Gto.","019","Jerécuaro","0001","Jerécuaro","49517","23614","25903","13770" -"11","11","Guanajuato","Gto.","020","León","0001","León de los Aldama","1721215","846673","874542","440870" -"11","11","Guanajuato","Gto.","021","Moroleón","0001","Moroleón","47261","22702","24559","14275" -"11","11","Guanajuato","Gto.","022","Ocampo","0001","Ocampo","26383","13502","12881","6137" -"11","11","Guanajuato","Gto.","023","Pénjamo","0001","Pénjamo","154960","74417","80543","39613" -"11","11","Guanajuato","Gto.","024","Pueblo Nuevo","0001","Pueblo Nuevo","12403","5921","6482","3284" -"11","11","Guanajuato","Gto.","025","Purísima del Rincón","0001","Purísima de Bustos","83842","41334","42508","19873" -"11","11","Guanajuato","Gto.","026","Romita","0001","Romita","65766","32253","33513","16207" -"11","11","Guanajuato","Gto.","027","Salamanca","0001","Salamanca","273417","132278","141139","74992" -"11","11","Guanajuato","Gto.","028","Salvatierra","0001","Salvatierra","94126","45447","48679","25802" -"11","11","Guanajuato","Gto.","029","San Diego de la Unión","0001","San Diego de la Unión","41054","19245","21809","10167" -"11","11","Guanajuato","Gto.","030","San Felipe","0001","San Felipe","119793","58087","61706","28000" -"11","11","Guanajuato","Gto.","031","San Francisco del Rincón","0001","San Francisco del Rincón","130871","63982","66889","32225" -"11","11","Guanajuato","Gto.","032","San José Iturbide","0001","San José Iturbide","89558","43419","46139","22749" -"11","11","Guanajuato","Gto.","033","San Luis de la Paz","0001","San Luis de la Paz","128536","60652","67884","30404" -"11","11","Guanajuato","Gto.","034","Santa Catarina","0001","Santa Catarina","5723","2693","3030","1551" -"11","11","Guanajuato","Gto.","035","Santa Cruz de Juventino Rosas","0001","Juventino Rosas","82340","39162","43178","19432" -"11","11","Guanajuato","Gto.","036","Santiago Maravatío","0001","Santiago Maravatío","6714","3219","3495","2003" -"11","11","Guanajuato","Gto.","037","Silao de la Victoria","0001","Silao de la Victoria","203556","100073","103483","46625" -"11","11","Guanajuato","Gto.","038","Tarandacuao","0001","Tarandacuao","11304","5494","5810","3190" -"11","11","Guanajuato","Gto.","039","Tarimoro","0001","Tarimoro","35905","17400","18505","10198" -"11","11","Guanajuato","Gto.","040","Tierra Blanca","0001","Tierra Blanca","20007","9660","10347","4904" -"11","11","Guanajuato","Gto.","041","Uriangato","0001","Uriangato","61494","29632","31862","17360" -"11","11","Guanajuato","Gto.","042","Valle de Santiago","0001","Valle de Santiago","150054","72304","77750","37805" -"11","11","Guanajuato","Gto.","043","Victoria","0001","Victoria","21253","9935","11318","5473" -"11","11","Guanajuato","Gto.","044","Villagrán","0001","Villagrán","65791","31987","33804","16401" -"11","11","Guanajuato","Gto.","045","Xichú","0001","Xichú","11143","5270","5873","3013" -"11","11","Guanajuato","Gto.","046","Yuriria","0001","Yuriria","68741","32858","35883","19179" -"12","12","Guerrero","Gro.","001","Acapulco de Juárez","0001","Acapulco de Juárez","779566","371794","407772","224027" -"12","12","Guerrero","Gro.","002","Ahuacuotzingo","0001","Ahuacuotzingo","25205","11762","13443","5783" -"12","12","Guerrero","Gro.","003","Ajuchitlán del Progreso","0001","Ajuchitlán del Progreso","37655","18378","19277","9270" -"12","12","Guerrero","Gro.","004","Alcozauca de Guerrero","0001","Alcozauca de Guerrero","21225","9895","11330","4044" -"12","12","Guerrero","Gro.","005","Alpoyeca","0001","Alpoyeca","7813","3702","4111","1924" -"12","12","Guerrero","Gro.","006","Apaxtla","0001","Ciudad Apaxtla de Castrejón","11112","5403","5709","2911" -"12","12","Guerrero","Gro.","007","Arcelia","0001","Arcelia","33267","16059","17208","8953" -"12","12","Guerrero","Gro.","008","Atenango del Río","0001","Atenango del Río","9147","4412","4735","2460" -"12","12","Guerrero","Gro.","009","Atlamajalcingo del Monte","0001","Atlamajalcingo del Monte","5811","2715","3096","1276" -"12","12","Guerrero","Gro.","010","Atlixtac","0001","Atlixtac","28491","13506","14985","6879" -"12","12","Guerrero","Gro.","011","Atoyac de Álvarez","0001","Atoyac de Álvarez","60680","29479","31201","17770" -"12","12","Guerrero","Gro.","012","Ayutla de los Libres","0001","Ayutla de los Libres","69123","33478","35645","15821" -"12","12","Guerrero","Gro.","013","Azoyú","0001","Azoyú","15099","7387","7712","4307" -"12","12","Guerrero","Gro.","014","Benito Juárez","0001","San Jerónimo de Juárez","15442","7568","7874","5069" -"12","12","Guerrero","Gro.","015","Buenavista de Cuéllar","0001","Buenavista de Cuéllar","12982","6250","6732","4028" -"12","12","Guerrero","Gro.","016","Coahuayutla de José María Izazaga","0001","Coahuayutla de Guerrero","12408","6259","6149","3482" -"12","12","Guerrero","Gro.","017","Cocula","0001","Cocula","15579","7631","7948","4302" -"12","12","Guerrero","Gro.","018","Copala","0001","Copala","14463","6984","7479","4168" -"12","12","Guerrero","Gro.","019","Copalillo","0001","Copalillo","15598","7476","8122","3483" -"12","12","Guerrero","Gro.","020","Copanatoyac","0001","Copanatoyac","21648","10030","11618","4595" -"12","12","Guerrero","Gro.","021","Coyuca de Benítez","0001","Coyuca de Benítez","73056","35515","37541","21384" -"12","12","Guerrero","Gro.","022","Coyuca de Catalán","0001","Coyuca de Catalán","38554","19025","19529","10732" -"12","12","Guerrero","Gro.","023","Cuajinicuilapa","0001","Cuajinicuilapa","26627","13184","13443","7445" -"12","12","Guerrero","Gro.","024","Cualác","0001","Cualác","7874","3776","4098","1973" -"12","12","Guerrero","Gro.","025","Cuautepec","0001","Cuautepec","17024","8269","8755","4386" -"12","12","Guerrero","Gro.","026","Cuetzala del Progreso","0001","Cuetzala del Progreso","8272","4092","4180","2419" -"12","12","Guerrero","Gro.","027","Cutzamala de Pinzón","0001","Cutzamala de Pinzón","20537","10188","10349","6209" -"12","12","Guerrero","Gro.","028","Chilapa de Álvarez","0001","Chilapa de Álvarez","123722","57741","65981","29670" -"12","12","Guerrero","Gro.","029","Chilpancingo de los Bravo","0001","Chilpancingo de los Bravo","283354","134497","148857","72566" -"12","12","Guerrero","Gro.","030","Florencio Villarreal","0001","Cruz Grande","22250","10907","11343","5745" -"12","12","Guerrero","Gro.","031","General Canuto A. Neri","0001","Acapetlahuaya","6278","3055","3223","1602" -"12","12","Guerrero","Gro.","032","General Heliodoro Castillo","0001","Tlacotepec","37254","18254","19000","8466" -"12","12","Guerrero","Gro.","033","Huamuxtitlán","0001","Huamuxtitlán","17488","8292","9196","4621" -"12","12","Guerrero","Gro.","034","Huitzuco de los Figueroa","0001","Ciudad de Huitzuco","36593","17509","19084","10535" -"12","12","Guerrero","Gro.","035","Iguala de la Independencia","0001","Iguala de la Independencia","154173","73936","80237","42889" -"12","12","Guerrero","Gro.","036","Igualapa","0001","Igualapa","11739","5599","6140","3021" -"12","12","Guerrero","Gro.","037","Ixcateopan de Cuauhtémoc","0001","Ixcateopan de Cuauhtémoc","6138","2998","3140","1685" -"12","12","Guerrero","Gro.","038","Zihuatanejo de Azueta","0001","Zihuatanejo","126001","61437","64564","37375" -"12","12","Guerrero","Gro.","039","Juan R. Escudero","0001","Tierra Colorada","26093","12761","13332","7151" -"12","12","Guerrero","Gro.","040","Leonardo Bravo","0001","Chichihualco","26357","12797","13560","6422" -"12","12","Guerrero","Gro.","041","Malinaltepec","0001","Malinaltepec","29625","13887","15738","6747" -"12","12","Guerrero","Gro.","042","Mártir de Cuilapan","0001","Apango","18613","8687","9926","4868" -"12","12","Guerrero","Gro.","043","Metlatónoc","0001","Metlatónoc","18859","8775","10084","3895" -"12","12","Guerrero","Gro.","044","Mochitlán","0001","Mochitlán","12402","6024","6378","3263" -"12","12","Guerrero","Gro.","045","Olinalá","0001","Olinalá","28446","13509","14937","6673" -"12","12","Guerrero","Gro.","046","Ometepec","0001","Ometepec","68207","33041","35166","17236" -"12","12","Guerrero","Gro.","047","Pedro Ascencio Alquisiras","0001","Ixcapuzalco","7076","3352","3724","1684" -"12","12","Guerrero","Gro.","048","Petatlán","0001","Petatlán","44583","21892","22691","12978" -"12","12","Guerrero","Gro.","049","Pilcaya","0001","Pilcaya","12753","6243","6510","3586" -"12","12","Guerrero","Gro.","050","Pungarabato","0001","Ciudad Altamirano","38482","18789","19693","10224" -"12","12","Guerrero","Gro.","051","Quechultenango","0001","Quechultenango","36143","17348","18795","8975" -"12","12","Guerrero","Gro.","052","San Luis Acatlán","0001","San Luis Acatlán","46270","22643","23627","10602" -"12","12","Guerrero","Gro.","053","San Marcos","0001","San Marcos","50124","24574","25550","13960" -"12","12","Guerrero","Gro.","054","San Miguel Totolapan","0001","San Miguel Totolapan","24139","11867","12272","5749" -"12","12","Guerrero","Gro.","055","Taxco de Alarcón","0001","Taxco de Alarcón","105586","50365","55221","29999" -"12","12","Guerrero","Gro.","056","Tecoanapa","0001","Tecoanapa","46063","22588","23475","11575" -"12","12","Guerrero","Gro.","057","Técpan de Galeana","0001","Técpan de Galeana","65237","32401","32836","19721" -"12","12","Guerrero","Gro.","058","Teloloapan","0001","Teloloapan","53817","25685","28132","13902" -"12","12","Guerrero","Gro.","059","Tepecoacuilco de Trujano","0001","Tepecoacuilco de Trujano","30806","14840","15966","8805" -"12","12","Guerrero","Gro.","060","Tetipac","0001","Tetipac","13552","6598","6954","3739" -"12","12","Guerrero","Gro.","061","Tixtla de Guerrero","0001","Tixtla de Guerrero","43171","20607","22564","11062" -"12","12","Guerrero","Gro.","062","Tlacoachistlahuaca","0001","Tlacoachistlahuaca","22781","10611","12170","4936" -"12","12","Guerrero","Gro.","063","Tlacoapa","0001","Tlacoapa","10092","4733","5359","2539" -"12","12","Guerrero","Gro.","064","Tlalchapa","0001","Tlalchapa","11681","5820","5861","3422" -"12","12","Guerrero","Gro.","065","Tlalixtaquilla de Maldonado","0001","Tlalixtaquilla","7602","3700","3902","1891" -"12","12","Guerrero","Gro.","066","Tlapa de Comonfort","0001","Tlapa de Comonfort","96125","45021","51104","21620" -"12","12","Guerrero","Gro.","067","Tlapehuala","0001","Tlapehuala","22209","10875","11334","5863" -"12","12","Guerrero","Gro.","068","La Unión de Isidoro Montes de Oca","0001","La Unión","26349","13361","12988","7711" -"12","12","Guerrero","Gro.","069","Xalpatláhuac","0001","Xalpatláhuac","11966","5421","6545","2527" -"12","12","Guerrero","Gro.","070","Xochihuehuetlán","0001","Xochihuehuetlán","7862","3740","4122","2029" -"12","12","Guerrero","Gro.","071","Xochistlahuaca","0001","Xochistlahuaca","29891","14260","15631","7716" -"12","12","Guerrero","Gro.","072","Zapotitlán Tablas","0001","Zapotitlán Tablas","12004","5829","6175","3029" -"12","12","Guerrero","Gro.","073","Zirándaro","0001","Zirándaro de los Chávez","18031","9079","8952","4975" -"12","12","Guerrero","Gro.","074","Zitlala","0001","Zitlala","21977","10051","11926","5807" -"12","12","Guerrero","Gro.","075","Eduardo Neri","0001","Zumpango del Río","53126","25725","27401","12503" -"12","12","Guerrero","Gro.","076","Acatepec","0001","Acatepec","40197","19540","20657","8949" -"12","12","Guerrero","Gro.","077","Marquelia","0001","Marquelia","14280","7027","7253","3923" -"12","12","Guerrero","Gro.","078","Cochoapa el Grande","0001","Cochoapa el Grande","21241","9929","11312","4167" -"12","12","Guerrero","Gro.","079","José Joaquín de Herrera","0001","Hueycantenango","18381","8791","9590","3961" -"12","12","Guerrero","Gro.","080","Juchitán","0001","Juchitán","7559","3818","3741","2139" -"12","12","Guerrero","Gro.","081","Iliatenco","0001","Iliatenco","11679","5566","6113","2711" -"12","12","Guerrero","Gro.","082","Las Vigas","0001","Las Vigas","-","-","-","-" -"12","12","Guerrero","Gro.","083","Ñuu Savi","0001","Coapinola","-","-","-","-" -"12","12","Guerrero","Gro.","084","Santa Cruz del Rincón","0001","Santa Cruz del Rincón","-","-","-","-" -"12","12","Guerrero","Gro.","085","San Nicolás","0001","San Nicolás","-","-","-","-" -"13","13","Hidalgo","Hgo.","001","Acatlán","0001","Acatlán","22268","10705","11563","5870" -"13","13","Hidalgo","Hgo.","002","Acaxochitlán","0001","Acaxochitlán","46065","21717","24348","10445" -"13","13","Hidalgo","Hgo.","003","Actopan","0001","Actopan","61002","29077","31925","16271" -"13","13","Hidalgo","Hgo.","004","Agua Blanca de Iturbide","0001","Agua Blanca de Iturbide","10313","4913","5400","2854" -"13","13","Hidalgo","Hgo.","005","Ajacuba","0001","Ajacuba","18872","9108","9764","5174" -"13","13","Hidalgo","Hgo.","006","Alfajayucan","0001","Alfajayucan","19162","9198","9964","5522" -"13","13","Hidalgo","Hgo.","007","Almoloya","0001","Almoloya","12546","6070","6476","3560" -"13","13","Hidalgo","Hgo.","008","Apan","0001","Apan","46681","22288","24393","12931" -"13","13","Hidalgo","Hgo.","009","El Arenal","0001","El Arenal","19836","9575","10261","5258" -"13","13","Hidalgo","Hgo.","010","Atitalaquia","0001","Atitalaquia","31525","15481","16044","8715" -"13","13","Hidalgo","Hgo.","011","Atlapexco","0001","Atlapexco","19812","9511","10301","5306" -"13","13","Hidalgo","Hgo.","012","Atotonilco el Grande","0001","Atotonilco el Grande","30135","14261","15874","8382" -"13","13","Hidalgo","Hgo.","013","Atotonilco de Tula","0001","Atotonilco de Tula","62470","30414","32056","17767" -"13","13","Hidalgo","Hgo.","014","Calnali","0001","Calnali","16150","7744","8406","4738" -"13","13","Hidalgo","Hgo.","015","Cardonal","0001","Cardonal","19431","9308","10123","5193" -"13","13","Hidalgo","Hgo.","016","Cuautepec de Hinojosa","0001","Cuautepec","60421","28866","31555","16091" -"13","13","Hidalgo","Hgo.","017","Chapantongo","0001","Chapantongo","12967","6277","6690","3888" -"13","13","Hidalgo","Hgo.","018","Chapulhuacán","0001","Chapulhuacán","22903","11262","11641","6260" -"13","13","Hidalgo","Hgo.","019","Chilcuautla","0001","Chilcuautla","18909","9190","9719","5159" -"13","13","Hidalgo","Hgo.","020","Eloxochitlán","0001","Eloxochitlán","2593","1239","1354","847" -"13","13","Hidalgo","Hgo.","021","Emiliano Zapata","0001","Emiliano Zapata","15175","7338","7837","4161" -"13","13","Hidalgo","Hgo.","022","Epazoyucan","0001","Epazoyucan","16285","7879","8406","4834" -"13","13","Hidalgo","Hgo.","023","Francisco I. Madero","0001","Tepatepec","36248","17296","18952","9702" -"13","13","Hidalgo","Hgo.","024","Huasca de Ocampo","0001","Huasca de Ocampo","17607","8319","9288","4746" -"13","13","Hidalgo","Hgo.","025","Huautla","0001","Huautla","20673","9861","10812","5544" -"13","13","Hidalgo","Hgo.","026","Huazalingo","0001","Huazalingo","12766","6195","6571","3036" -"13","13","Hidalgo","Hgo.","027","Huehuetla","0001","Huehuetla","22846","11016","11830","6268" -"13","13","Hidalgo","Hgo.","028","Huejutla de Reyes","0001","Huejutla de Reyes","126781","61321","65460","31522" -"13","13","Hidalgo","Hgo.","029","Huichapan","0001","Huichapan","47425","22780","24645","12889" -"13","13","Hidalgo","Hgo.","030","Ixmiquilpan","0001","Ixmiquilpan","98654","46440","52214","26601" -"13","13","Hidalgo","Hgo.","031","Jacala de Ledezma","0001","Jacala","12290","5860","6430","3749" -"13","13","Hidalgo","Hgo.","032","Jaltocán","0001","Jaltocán","10523","5138","5385","2669" -"13","13","Hidalgo","Hgo.","033","Juárez Hidalgo","0001","Juárez Hidalgo","2895","1370","1525","955" -"13","13","Hidalgo","Hgo.","034","Lolotla","0001","Lolotla","9474","4577","4897","2603" -"13","13","Hidalgo","Hgo.","035","Metepec","0001","Metepec","13078","6185","6893","3273" -"13","13","Hidalgo","Hgo.","036","San Agustín Metzquititlán","0001","Mezquititlán","9449","4582","4867","2837" -"13","13","Hidalgo","Hgo.","037","Metztitlán","0001","Metztitlán","20962","10074","10888","6237" -"13","13","Hidalgo","Hgo.","038","Mineral del Chico","0001","Mineral del Chico","8878","4301","4577","2537" -"13","13","Hidalgo","Hgo.","039","Mineral del Monte","0001","Mineral del Monte","14324","6817","7507","3688" -"13","13","Hidalgo","Hgo.","040","La Misión","0001","La Misión","9819","4757","5062","2930" -"13","13","Hidalgo","Hgo.","041","Mixquiahuala de Juárez","0001","Mixquiahuala de Juárez","47222","22625","24597","12705" -"13","13","Hidalgo","Hgo.","042","Molango de Escamilla","0001","Molango de Escamilla","11578","5685","5893","3337" -"13","13","Hidalgo","Hgo.","043","Nicolás Flores","0001","Nicolás Flores","6265","3036","3229","1760" -"13","13","Hidalgo","Hgo.","044","Nopala de Villagrán","0001","Nopala de Villagrán","16948","8237","8711","5145" -"13","13","Hidalgo","Hgo.","045","Omitlán de Juárez","0001","Omitlán de Juárez","9295","4422","4873","2506" -"13","13","Hidalgo","Hgo.","046","San Felipe Orizatlán","0001","San Felipe Orizatlán","38492","18728","19764","10230" -"13","13","Hidalgo","Hgo.","047","Pacula","0001","Pacula","4748","2230","2518","1430" -"13","13","Hidalgo","Hgo.","048","Pachuca de Soto","0001","Pachuca de Soto","314331","149559","164772","93277" -"13","13","Hidalgo","Hgo.","049","Pisaflores","0001","Pisaflores","18723","9109","9614","4881" -"13","13","Hidalgo","Hgo.","050","Progreso de Obregón","0001","Progreso de Obregón","23641","11165","12476","6309" -"13","13","Hidalgo","Hgo.","051","Mineral de la Reforma","0001","Pachuquilla","202749","96259","106490","63897" -"13","13","Hidalgo","Hgo.","052","San Agustín Tlaxiaca","0001","San Agustín Tlaxiaca","38891","18950","19941","10402" -"13","13","Hidalgo","Hgo.","053","San Bartolo Tutotepec","0001","San Bartolo Tutotepec","17699","8737","8962","5004" -"13","13","Hidalgo","Hgo.","054","San Salvador","0001","San Salvador","36796","17869","18927","9808" -"13","13","Hidalgo","Hgo.","055","Santiago de Anaya","0001","Santiago de Anaya","18329","8946","9383","5050" -"13","13","Hidalgo","Hgo.","056","Santiago Tulantepec de Lugo Guerrero","0001","Santiago Tulantepec","39561","18646","20915","11139" -"13","13","Hidalgo","Hgo.","057","Singuilucan","0001","Singuilucan","15142","7379","7763","4097" -"13","13","Hidalgo","Hgo.","058","Tasquillo","0001","Tasquillo","17441","8146","9295","5097" -"13","13","Hidalgo","Hgo.","059","Tecozautla","0001","Tecozautla","38010","18137","19873","10220" -"13","13","Hidalgo","Hgo.","060","Tenango de Doria","0001","Tenango de Doria","17503","8395","9108","4630" -"13","13","Hidalgo","Hgo.","061","Tepeapulco","0001","Tepeapulco","56245","26940","29305","16489" -"13","13","Hidalgo","Hgo.","062","Tepehuacán de Guerrero","0001","Tepehuacán de Guerrero","31235","15568","15667","7498" -"13","13","Hidalgo","Hgo.","063","Tepeji del Río de Ocampo","0001","Tepeji del Río de Ocampo","90546","44062","46484","24689" -"13","13","Hidalgo","Hgo.","064","Tepetitlán","0001","Tepetitlán","10830","5255","5575","3258" -"13","13","Hidalgo","Hgo.","065","Tetepango","0001","Tetepango","11768","5740","6028","3088" -"13","13","Hidalgo","Hgo.","066","Villa de Tezontepec","0001","Tezontepec","13032","6326","6706","3444" -"13","13","Hidalgo","Hgo.","067","Tezontepec de Aldama","0001","Tezontepec de Aldama","55134","27089","28045","14843" -"13","13","Hidalgo","Hgo.","068","Tianguistengo","0001","Tianguistengo","14340","7018","7322","4027" -"13","13","Hidalgo","Hgo.","069","Tizayuca","0001","Tizayuca","168302","82047","86255","47540" -"13","13","Hidalgo","Hgo.","070","Tlahuelilpan","0001","Tlahuelilpan","19067","9304","9763","4917" -"13","13","Hidalgo","Hgo.","071","Tlahuiltepa","0001","Tlahuiltepa","9086","4411","4675","2855" -"13","13","Hidalgo","Hgo.","072","Tlanalapa","0001","Tlanalapa","11113","5366","5747","3187" -"13","13","Hidalgo","Hgo.","073","Tlanchinol","0001","Tlanchinol","37722","18477","19245","9551" -"13","13","Hidalgo","Hgo.","074","Tlaxcoapan","0001","Tlaxcoapan","28626","13906","14720","7035" -"13","13","Hidalgo","Hgo.","075","Tolcayuca","0001","Tolcayuca","21362","10304","11058","6015" -"13","13","Hidalgo","Hgo.","076","Tula de Allende","0001","Tula de Allende","115107","55588","59519","33335" -"13","13","Hidalgo","Hgo.","077","Tulancingo de Bravo","0001","Tulancingo","168369","79767","88602","45979" -"13","13","Hidalgo","Hgo.","078","Xochiatipan","0001","Xochiatipan","18260","8843","9417","4364" -"13","13","Hidalgo","Hgo.","079","Xochicoatlán","0001","Xochicoatlán","7015","3454","3561","2207" -"13","13","Hidalgo","Hgo.","080","Yahualica","0001","Yahualica","24674","12060","12614","6277" -"13","13","Hidalgo","Hgo.","081","Zacualtipán de Ángeles","0001","Zacualtipán","38155","18137","20018","10603" -"13","13","Hidalgo","Hgo.","082","Zapotlán de Juárez","0001","Zapotlán de Juárez","21443","10342","11101","5851" -"13","13","Hidalgo","Hgo.","083","Zempoala","0001","Zempoala","57906","27906","30000","17481" -"13","13","Hidalgo","Hgo.","084","Zimapán","0001","Zimapán","39927","18899","21028","10993" -"14","14","Jalisco","Jal.","001","Acatic","0001","Acatic","23175","11383","11792","6411" -"14","14","Jalisco","Jal.","002","Acatlán de Juárez","0001","Acatlán de Juárez","25250","13244","12006","6379" -"14","14","Jalisco","Jal.","003","Ahualulco de Mercado","0001","Ahualulco de Mercado","23630","11784","11846","6535" -"14","14","Jalisco","Jal.","004","Amacueca","0001","Amacueca","5743","2776","2967","1589" -"14","14","Jalisco","Jal.","005","Amatitán","0001","Amatitán","16490","8184","8306","4216" -"14","14","Jalisco","Jal.","006","Ameca","0001","Ameca","60386","29564","30822","17374" -"14","14","Jalisco","Jal.","007","San Juanito de Escobedo","0001","San Juanito de Escobedo","9433","4720","4713","2665" -"14","14","Jalisco","Jal.","008","Arandas","0001","Arandas","80609","39492","41117","22781" -"14","14","Jalisco","Jal.","009","El Arenal","0001","El Arenal","21115","10345","10770","5682" -"14","14","Jalisco","Jal.","010","Atemajac de Brizuela","0001","Atemajac de Brizuela","7758","3847","3911","1820" -"14","14","Jalisco","Jal.","011","Atengo","0001","Atengo","5599","2833","2766","1530" -"14","14","Jalisco","Jal.","012","Atenguillo","0001","Atenguillo","4176","2055","2121","1311" -"14","14","Jalisco","Jal.","013","Atotonilco el Alto","0001","Atotonilco el Alto","64009","31571","32438","17409" -"14","14","Jalisco","Jal.","014","Atoyac","0001","Atoyac","8689","4214","4475","2537" -"14","14","Jalisco","Jal.","015","Autlán de Navarro","0001","Autlán de Navarro","64931","31886","33045","18903" -"14","14","Jalisco","Jal.","016","Ayotlán","0001","Ayotlán","41552","20364","21188","10744" -"14","14","Jalisco","Jal.","017","Ayutla","0001","Ayutla","12880","6414","6466","3544" -"14","14","Jalisco","Jal.","018","La Barca","0001","La Barca","67937","32851","35086","17725" -"14","14","Jalisco","Jal.","019","Bolaños","0001","Bolaños","7043","3502","3541","1621" -"14","14","Jalisco","Jal.","020","Cabo Corrientes","0001","El Tuito","10940","5644","5296","3182" -"14","14","Jalisco","Jal.","021","Casimiro Castillo","0001","La Resolana","20548","10194","10354","6242" -"14","14","Jalisco","Jal.","022","Cihuatlán","0001","Cihuatlán","40139","19979","20160","11536" -"14","14","Jalisco","Jal.","023","Zapotlán el Grande","0001","Ciudad Guzmán","115141","56188","58953","31499" -"14","14","Jalisco","Jal.","024","Cocula","0001","Cocula","29267","14395","14872","8134" -"14","14","Jalisco","Jal.","025","Colotlán","0001","Colotlán","19689","9482","10207","5725" -"14","14","Jalisco","Jal.","026","Concepción de Buenos Aires","0001","Concepción de Buenos Aires","6334","3198","3136","1848" -"14","14","Jalisco","Jal.","027","Cuautitlán de García Barragán","0001","Cuautitlán de García Barragán","18370","9347","9023","4961" -"14","14","Jalisco","Jal.","028","Cuautla","0001","Cuautla","2166","1057","1109","679" -"14","14","Jalisco","Jal.","029","Cuquío","0001","Cuquío","17820","8655","9165","4927" -"14","14","Jalisco","Jal.","030","Chapala","0001","Chapala","55196","26815","28381","16359" -"14","14","Jalisco","Jal.","031","Chimaltitán","0001","Chimaltitán","3270","1624","1646","892" -"14","14","Jalisco","Jal.","032","Chiquilistlán","0001","Chiquilistlán","5983","2975","3008","1468" -"14","14","Jalisco","Jal.","033","Degollado","0001","Degollado","21226","10263","10963","5938" -"14","14","Jalisco","Jal.","034","Ejutla","0001","Ejutla","1981","1007","974","661" -"14","14","Jalisco","Jal.","035","Encarnación de Díaz","0001","Encarnación de Díaz","53039","25567","27472","14392" -"14","14","Jalisco","Jal.","036","Etzatlán","0001","Etzatlán","20011","9784","10227","5383" -"14","14","Jalisco","Jal.","037","El Grullo","0001","El Grullo","25920","12626","13294","7462" -"14","14","Jalisco","Jal.","038","Guachinango","0001","Guachinango","4199","2154","2045","1272" -"14","14","Jalisco","Jal.","039","Guadalajara","0001","Guadalajara","1385629","666997","718632","398966" -"14","14","Jalisco","Jal.","040","Hostotipaquillo","0001","Hostotipaquillo","8732","4368","4364","2306" -"14","14","Jalisco","Jal.","041","Huejúcar","0001","Huejúcar","5920","2907","3013","1780" -"14","14","Jalisco","Jal.","042","Huejuquilla el Alto","0001","Huejuquilla el Alto","10015","4838","5177","2693" -"14","14","Jalisco","Jal.","043","La Huerta","0001","La Huerta","23258","11626","11632","7004" -"14","14","Jalisco","Jal.","044","Ixtlahuacán de los Membrillos","0001","Ixtlahuacán de los Membrillos","67969","33422","34547","19724" -"14","14","Jalisco","Jal.","045","Ixtlahuacán del Río","0001","Ixtlahuacán del Río","20465","9976","10489","5759" -"14","14","Jalisco","Jal.","046","Jalostotitlán","0001","Jalostotitlán","32678","16012","16666","8938" -"14","14","Jalisco","Jal.","047","Jamay","0001","Jamay","24894","12464","12430","6241" -"14","14","Jalisco","Jal.","048","Jesús María","0001","Jesús María","18982","8874","10108","5423" -"14","14","Jalisco","Jal.","049","Jilotlán de los Dolores","0001","Jilotlán de los Dolores","9425","5053","4372","2552" -"14","14","Jalisco","Jal.","050","Jocotepec","0001","Jocotepec","47105","23229","23876","11072" -"14","14","Jalisco","Jal.","051","Juanacatlán","0001","Juanacatlán","30855","15259","15596","8703" -"14","14","Jalisco","Jal.","052","Juchitlán","0001","Juchitlán","5534","2669","2865","1604" -"14","14","Jalisco","Jal.","053","Lagos de Moreno","0001","Lagos de Moreno","172403","83977","88426","45047" -"14","14","Jalisco","Jal.","054","El Limón","0001","El Limón","5368","2670","2698","1791" -"14","14","Jalisco","Jal.","055","Magdalena","0001","Magdalena","21781","10589","11192","5859" -"14","14","Jalisco","Jal.","056","Santa María del Oro","0001","Santa María del Oro","1815","914","901","573" -"14","14","Jalisco","Jal.","057","La Manzanilla de la Paz","0001","La Manzanilla de la Paz","4099","2002","2097","1249" -"14","14","Jalisco","Jal.","058","Mascota","0001","Mascota","14451","7039","7412","4318" -"14","14","Jalisco","Jal.","059","Mazamitla","0001","Mazamitla","14043","6760","7283","3678" -"14","14","Jalisco","Jal.","060","Mexticacán","0001","Mexticacán","5307","2447","2860","1634" -"14","14","Jalisco","Jal.","061","Mezquitic","0001","Mezquitic","22083","10615","11468","4734" -"14","14","Jalisco","Jal.","062","Mixtlán","0001","Mixtlán","3638","1817","1821","1079" -"14","14","Jalisco","Jal.","063","Ocotlán","0001","Ocotlán","106050","51775","54275","29121" -"14","14","Jalisco","Jal.","064","Ojuelos de Jalisco","0001","Ojuelos de Jalisco","33588","16258","17330","8293" -"14","14","Jalisco","Jal.","065","Pihuamo","0001","Pihuamo","11386","5674","5712","3562" -"14","14","Jalisco","Jal.","066","Poncitlán","0001","Poncitlán","53659","26380","27279","12372" -"14","14","Jalisco","Jal.","067","Puerto Vallarta","0001","Puerto Vallarta","291839","146187","145652","86553" -"14","14","Jalisco","Jal.","068","Villa Purificación","0001","Villa Purificación","11303","5695","5608","3432" -"14","14","Jalisco","Jal.","069","Quitupan","0001","Quitupan","7734","3677","4057","2402" -"14","14","Jalisco","Jal.","070","El Salto","0001","El Salto","232852","121690","111162","59178" -"14","14","Jalisco","Jal.","071","San Cristóbal de la Barranca","0001","San Cristóbal de la Barranca","2924","1465","1459","817" -"14","14","Jalisco","Jal.","072","San Diego de Alejandría","0001","San Diego de Alejandría","7609","3739","3870","1981" -"14","14","Jalisco","Jal.","073","San Juan de los Lagos","0001","San Juan de los Lagos","72230","35728","36502","18657" -"14","14","Jalisco","Jal.","074","San Julián","0001","San Julián","16792","8051","8741","4787" -"14","14","Jalisco","Jal.","075","San Marcos","0001","San Marcos","3791","1893","1898","1030" -"14","14","Jalisco","Jal.","076","San Martín de Bolaños","0001","San Martín de Bolaños","3095","1510","1585","862" -"14","14","Jalisco","Jal.","077","San Martín Hidalgo","0001","San Martín Hidalgo","28102","13801","14301","8129" -"14","14","Jalisco","Jal.","078","San Miguel el Alto","0001","San Miguel el Alto","31965","15549","16416","8829" -"14","14","Jalisco","Jal.","079","Gómez Farías","0001","San Sebastián del Sur","16431","8078","8353","3940" -"14","14","Jalisco","Jal.","080","San Sebastián del Oeste","0001","San Sebastián del Oeste","5086","2635","2451","1578" -"14","14","Jalisco","Jal.","081","Santa María de los Ángeles","0001","Santa María de los Ángeles","3515","1716","1799","1081" -"14","14","Jalisco","Jal.","082","Sayula","0001","Sayula","37186","17984","19202","9463" -"14","14","Jalisco","Jal.","083","Tala","0001","Tala","87690","43517","44173","24943" -"14","14","Jalisco","Jal.","084","Talpa de Allende","0001","Talpa de Allende","14997","7494","7503","4396" -"14","14","Jalisco","Jal.","085","Tamazula de Gordiano","0001","Tamazula de Gordiano","38955","19120","19835","11559" -"14","14","Jalisco","Jal.","086","Tapalpa","0001","Tapalpa","21245","10561","10684","4839" -"14","14","Jalisco","Jal.","087","Tecalitlán","0001","Tecalitlán","16705","8256","8449","4885" -"14","14","Jalisco","Jal.","088","Tecolotlán","0001","Tecolotlán","16603","8231","8372","5001" -"14","14","Jalisco","Jal.","089","Techaluta de Montenegro","0001","Techaluta de Montenegro","4072","2011","2061","1096" -"14","14","Jalisco","Jal.","090","Tenamaxtlán","0001","Tenamaxtlán","7302","3574","3728","2261" -"14","14","Jalisco","Jal.","091","Teocaltiche","0001","Teocaltiche","39839","19159","20680","11047" -"14","14","Jalisco","Jal.","092","Teocuitatlán de Corona","0001","Teocuitatlán de Corona","11039","5495","5544","3280" -"14","14","Jalisco","Jal.","093","Tepatitlán de Morelos","0001","Tepatitlán de Morelos","150190","73710","76480","40899" -"14","14","Jalisco","Jal.","094","Tequila","0001","Tequila","44353","21891","22462","11150" -"14","14","Jalisco","Jal.","095","Teuchitlán","0001","Teuchitlán","9647","4709","4938","2712" -"14","14","Jalisco","Jal.","096","Tizapán el Alto","0001","Tizapán el Alto","22758","11179","11579","6317" -"14","14","Jalisco","Jal.","097","Tlajomulco de Zúñiga","0001","Tlajomulco de Zúñiga","727750","360342","367408","212350" -"14","14","Jalisco","Jal.","098","San Pedro Tlaquepaque","0001","Tlaquepaque","687127","338844","348283","185374" -"14","14","Jalisco","Jal.","099","Tolimán","0001","Tolimán","11219","5565","5654","2621" -"14","14","Jalisco","Jal.","100","Tomatlán","0001","Tomatlán","36316","18444","17872","10381" -"14","14","Jalisco","Jal.","101","Tonalá","0001","Tonalá","569913","281695","288218","150521" -"14","14","Jalisco","Jal.","102","Tonaya","0001","Tonaya","5961","2898","3063","1810" -"14","14","Jalisco","Jal.","103","Tonila","0001","Tonila","7565","3769","3796","2156" -"14","14","Jalisco","Jal.","104","Totatiche","0001","Totatiche","4180","2115","2065","1331" -"14","14","Jalisco","Jal.","105","Tototlán","0001","Tototlán","23573","11562","12011","6480" -"14","14","Jalisco","Jal.","106","Tuxcacuesco","0001","Tuxcacuesco","5482","2784","2698","1287" -"14","14","Jalisco","Jal.","107","Tuxcueca","0001","Tuxcueca","6702","3247","3455","1756" -"14","14","Jalisco","Jal.","108","Tuxpan","0001","Tuxpan","37518","18352","19166","9655" -"14","14","Jalisco","Jal.","109","Unión de San Antonio","0001","Unión de San Antonio","19069","9323","9746","4942" -"14","14","Jalisco","Jal.","110","Unión de Tula","0001","Unión de Tula","13799","6684","7115","4126" -"14","14","Jalisco","Jal.","111","Valle de Guadalupe","0001","Valle de Guadalupe","6627","3269","3358","1859" -"14","14","Jalisco","Jal.","112","Valle de Juárez","0001","Valle de Juárez","6151","2990","3161","1882" -"14","14","Jalisco","Jal.","113","San Gabriel","0001","San Gabriel","16548","8197","8351","4211" -"14","14","Jalisco","Jal.","114","Villa Corona","0001","Villa Corona","19063","9490","9573","5093" -"14","14","Jalisco","Jal.","115","Villa Guerrero","0001","Villa Guerrero","5525","2762","2763","1659" -"14","14","Jalisco","Jal.","116","Villa Hidalgo","0001","Villa Hidalgo","20088","9670","10418","5612" -"14","14","Jalisco","Jal.","117","Cañadas de Obregón","0001","Cañadas de Obregón","4388","2191","2197","1396" -"14","14","Jalisco","Jal.","118","Yahualica de González Gallo","0001","Yahualica de González Gallo","22394","10713","11681","6937" -"14","14","Jalisco","Jal.","119","Zacoalco de Torres","0001","Zacoalco de Torres","30472","15362","15110","7791" -"14","14","Jalisco","Jal.","120","Zapopan","0001","Zapopan","1476491","720592","755899","425409" -"14","14","Jalisco","Jal.","121","Zapotiltic","0001","Zapotiltic","33713","16627","17086","9062" -"14","14","Jalisco","Jal.","122","Zapotitlán de Vadillo","0001","Zapotitlán de Vadillo","7466","3774","3692","1963" -"14","14","Jalisco","Jal.","123","Zapotlán del Rey","0001","Zapotlán del Rey","19279","9499","9780","5168" -"14","14","Jalisco","Jal.","124","Zapotlanejo","0001","Zapotlanejo","64806","31882","32924","17977" -"14","14","Jalisco","Jal.","125","San Ignacio Cerro Gordo","0001","San Ignacio Cerro Gordo","18341","8914","9427","4894" -"15","15","México","Mex.","001","Acambay de Ruíz Castañeda","0001","Villa de Acambay de Ruíz Castañeda","67872","32617","35255","17393" -"15","15","México","Mex.","002","Acolman","0001","Acolman de Nezahualcóyotl","171507","86228","85279","45406" -"15","15","México","Mex.","003","Aculco","0001","Aculco de Espinoza","49266","24089","25177","13111" -"15","15","México","Mex.","004","Almoloya de Alquisiras","0001","Almoloya de Alquisiras","15333","7281","8052","4191" -"15","15","México","Mex.","005","Almoloya de Juárez","0001","Villa de Almoloya de Juárez","174587","87130","87457","42214" -"15","15","México","Mex.","006","Almoloya del Río","0001","Almoloya del Río","12694","6150","6544","2925" -"15","15","México","Mex.","007","Amanalco","0001","Amanalco de Becerra","23675","11534","12141","6081" -"15","15","México","Mex.","008","Amatepec","0001","Amatepec","25244","12247","12997","6936" -"15","15","México","Mex.","009","Amecameca","0001","Amecameca de Juárez","53441","25440","28001","13454" -"15","15","México","Mex.","010","Apaxco","0001","Apaxco de Ocampo","31898","15633","16265","8169" -"15","15","México","Mex.","011","Atenco","0001","San Salvador Atenco","75489","37052","38437","18736" -"15","15","México","Mex.","012","Atizapán","0001","Santa Cruz Atizapán","12984","6287","6697","2856" -"15","15","México","Mex.","013","Atizapán de Zaragoza","0001","Ciudad López Mateos","523674","253429","270245","150388" -"15","15","México","Mex.","014","Atlacomulco","0001","Atlacomulco de Fabela","109384","52218","57166","27885" -"15","15","México","Mex.","015","Atlautla","0001","Atlautla de Victoria","31900","15585","16315","7510" -"15","15","México","Mex.","016","Axapusco","0001","Axapusco","29128","14287","14841","7757" -"15","15","México","Mex.","017","Ayapango","0001","Ayapango de Gabriel Ramos M.","10053","4810","5243","2593" -"15","15","México","Mex.","018","Calimaya","0001","Calimaya de Díaz González","68489","33388","35101","17285" -"15","15","México","Mex.","019","Capulhuac","0001","Capulhuac de Mirafuentes","36921","17778","19143","8348" -"15","15","México","Mex.","020","Coacalco de Berriozábal","0001","San Francisco Coacalco","293444","141107","152337","89726" -"15","15","México","Mex.","021","Coatepec Harinas","0001","Coatepec Harinas","38643","18560","20083","9286" -"15","15","México","Mex.","022","Cocotitlán","0001","Cocotitlán","15107","7350","7757","3887" -"15","15","México","Mex.","023","Coyotepec","0001","Coyotepec","40885","19992","20893","9867" -"15","15","México","Mex.","024","Cuautitlán","0001","Cuautitlán","178847","87666","91181","52220" -"15","15","México","Mex.","025","Chalco","0001","Chalco de Díaz Covarrubias","400057","193129","206928","104464" -"15","15","México","Mex.","026","Chapa de Mota","0001","Chapa de Mota","31737","15524","16213","7853" -"15","15","México","Mex.","027","Chapultepec","0001","Chapultepec","12772","6165","6607","3374" -"15","15","México","Mex.","028","Chiautla","0001","Chiautla","30045","14668","15377","7779" -"15","15","México","Mex.","029","Chicoloapan","0001","Chicoloapan de Juárez","200750","97195","103555","54674" -"15","15","México","Mex.","030","Chiconcuac","0001","Chiconcuac de Juárez","27692","13548","14144","6128" -"15","15","México","Mex.","031","Chimalhuacán","0001","Chimalhuacán","705193","344571","360622","180791" -"15","15","México","Mex.","032","Donato Guerra","0001","Villa Donato Guerra","37436","18391","19045","8470" -"15","15","México","Mex.","033","Ecatepec de Morelos","0001","Ecatepec de Morelos","1645352","798549","846803","448688" -"15","15","México","Mex.","034","Ecatzingo","0001","Ecatzingo de Hidalgo","10827","5321","5506","2712" -"15","15","México","Mex.","035","Huehuetoca","0001","Huehuetoca","163244","80016","83228","46674" -"15","15","México","Mex.","036","Hueypoxtla","0001","Hueypoxtla","46757","23108","23649","11577" -"15","15","México","Mex.","037","Huixquilucan","0001","Huixquilucan de Degollado","284965","136466","148499","82051" -"15","15","México","Mex.","038","Isidro Fabela","0001","Tlazala de Fabela","11929","5817","6112","3017" -"15","15","México","Mex.","039","Ixtapaluca","0001","Ixtapaluca","542211","263083","279128","146994" -"15","15","México","Mex.","040","Ixtapan de la Sal","0001","Ixtapan de la Sal","36911","17676","19235","9856" -"15","15","México","Mex.","041","Ixtapan del Oro","0001","Ixtapan del Oro","6475","3215","3260","1680" -"15","15","México","Mex.","042","Ixtlahuaca","0001","Ixtlahuaca de Rayón","160139","76775","83364","38312" -"15","15","México","Mex.","043","Xalatlaco","0001","Xalatlaco","30687","14952","15735","7103" -"15","15","México","Mex.","044","Jaltenco","0001","Jaltenco","28217","13645","14572","7639" -"15","15","México","Mex.","045","Jilotepec","0001","Jilotepec de Molina Enríquez","87671","42810","44861","22966" -"15","15","México","Mex.","046","Jilotzingo","0001","Santa Ana Jilotzingo","19877","9719","10158","5046" -"15","15","México","Mex.","047","Jiquipilco","0001","Jiquipilco","76826","36464","40362","19034" -"15","15","México","Mex.","048","Jocotitlán","0001","Ciudad de Jocotitlán","69264","33245","36019","17752" -"15","15","México","Mex.","049","Joquicingo","0001","Joquicingo de León Guzmán","15428","7543","7885","3593" -"15","15","México","Mex.","050","Juchitepec","0001","Juchitepec de Mariano Rivapalacio","27116","13143","13973","6888" -"15","15","México","Mex.","051","Lerma","0001","Lerma de Villada","170327","83968","86359","42550" -"15","15","México","Mex.","052","Malinalco","0001","Malinalco","28155","13833","14322","7417" -"15","15","México","Mex.","053","Melchor Ocampo","0001","Melchor Ocampo","61220","29907","31313","15279" -"15","15","México","Mex.","054","Metepec","0001","Metepec","242307","115997","126310","68154" -"15","15","México","Mex.","055","Mexicaltzingo","0001","San Mateo Mexicaltzingo","13807","6753","7054","3305" -"15","15","México","Mex.","056","Morelos","0001","San Bartolo Morelos","33164","15970","17194","8174" -"15","15","México","Mex.","057","Naucalpan de Juárez","0001","Naucalpan de Juárez","834434","402495","431939","240246" -"15","15","México","Mex.","058","Nezahualcóyotl","0001","Ciudad Nezahualcóyotl","1077208","519922","557286","298004" -"15","15","México","Mex.","059","Nextlalpan","0001","Santa Ana Nextlalpan","57082","27988","29094","15855" -"15","15","México","Mex.","060","Nicolás Romero","0001","Ciudad Nicolás Romero","430601","209774","220827","114782" -"15","15","México","Mex.","061","Nopaltepec","0001","Nopaltepec","10351","5090","5261","2888" -"15","15","México","Mex.","062","Ocoyoacac","0001","Ocoyoacac","72103","35221","36882","17339" -"15","15","México","Mex.","063","Ocuilan","0001","Ocuilan de Arteaga","36223","17645","18578","8791" -"15","15","México","Mex.","064","El Oro","0001","El Oro de Hidalgo","36937","17918","19019","9219" -"15","15","México","Mex.","065","Otumba","0001","Otumba de Gómez Farías","36331","18197","18134","9312" -"15","15","México","Mex.","066","Otzoloapan","0001","Otzoloapan","4891","2397","2494","1272" -"15","15","México","Mex.","067","Otzolotepec","0001","Villa Cuauhtémoc","88783","43447","45336","20537" -"15","15","México","Mex.","068","Ozumba","0001","Ozumba de Alzate","30785","14752","16033","7270" -"15","15","México","Mex.","069","Papalotla","0001","Papalotla","4862","2338","2524","1234" -"15","15","México","Mex.","070","La Paz","0001","Los Reyes Acaquilpan","304088","148202","155886","78198" -"15","15","México","Mex.","071","Polotitlán","0001","Polotitlán de la Ilustración","14985","7329","7656","4020" -"15","15","México","Mex.","072","Rayón","0001","Santa María Rayón","15972","7749","8223","3773" -"15","15","México","Mex.","073","San Antonio la Isla","0001","San Antonio la Isla","31962","15421","16541","8524" -"15","15","México","Mex.","074","San Felipe del Progreso","0001","San Felipe del Progreso","144924","69328","75596","32830" -"15","15","México","Mex.","075","San Martín de las Pirámides","0001","San Martín de las Pirámides","29182","14268","14914","7703" -"15","15","México","Mex.","076","San Mateo Atenco","0001","San Mateo Atenco","97418","47481","49937","23063" -"15","15","México","Mex.","077","San Simón de Guerrero","0001","San Simón de Guerrero","6692","3253","3439","1719" -"15","15","México","Mex.","078","Santo Tomás","0001","Santo Tomás de los Plátanos","9729","4836","4893","2631" -"15","15","México","Mex.","079","Soyaniquilpan de Juárez","0001","San Francisco Soyaniquilpan","14323","7103","7220","3964" -"15","15","México","Mex.","080","Sultepec","0001","Sultepec de Pedro Ascencio de Alquisiras","24145","11438","12707","6187" -"15","15","México","Mex.","081","Tecámac","0001","Tecámac de Felipe Villanueva","547503","265520","281983","164401" -"15","15","México","Mex.","082","Tejupilco","0001","Tejupilco de Hidalgo","79282","38008","41274","19860" -"15","15","México","Mex.","083","Temamatla","0001","Temamatla","14130","6928","7202","3731" -"15","15","México","Mex.","084","Temascalapa","0001","Temascalapa","43593","21374","22219","11583" -"15","15","México","Mex.","085","Temascalcingo","0001","Temascalcingo de José María Velasco","66414","31897","34517","17314" -"15","15","México","Mex.","086","Temascaltepec","0001","Temascaltepec de González","35014","17189","17825","8633" -"15","15","México","Mex.","087","Temoaya","0001","Temoaya","105766","51532","54234","24081" -"15","15","México","Mex.","088","Tenancingo","0001","Tenancingo de Degollado","104677","51227","53450","25577" -"15","15","México","Mex.","089","Tenango del Aire","0001","Tenango del Aire","11359","5552","5807","2877" -"15","15","México","Mex.","090","Tenango del Valle","0001","Tenango de Arista","90518","44490","46028","21106" -"15","15","México","Mex.","091","Teoloyucan","0001","Teoloyucan","65459","31939","33520","16143" -"15","15","México","Mex.","092","Teotihuacán","0001","Teotihuacán de Arista","58507","28195","30312","15800" -"15","15","México","Mex.","093","Tepetlaoxtoc","0001","Tepetlaoxtoc de Hidalgo","32564","15906","16658","8425" -"15","15","México","Mex.","094","Tepetlixpa","0001","Tepetlixpa","20500","9946","10554","5120" -"15","15","México","Mex.","095","Tepotzotlán","0001","Tepotzotlán","103696","50708","52988","27121" -"15","15","México","Mex.","096","Tequixquiac","0001","Tequixquiac","39489","19329","20160","10664" -"15","15","México","Mex.","097","Texcaltitlán","0001","Texcaltitlán","18482","8945","9537","4588" -"15","15","México","Mex.","098","Texcalyacac","0001","San Mateo Texcalyacac","5736","2821","2915","1450" -"15","15","México","Mex.","099","Texcoco","0001","Texcoco de Mora","277562","134940","142622","72119" -"15","15","México","Mex.","100","Tezoyuca","0001","Tezoyuca","47044","23237","23807","12205" -"15","15","México","Mex.","101","Tianguistenco","0001","Santiago Tianguistenco de Galeana","84259","40847","43412","20106" -"15","15","México","Mex.","102","Timilpan","0001","San Andrés Timilpan","16414","7861","8553","4487" -"15","15","México","Mex.","103","Tlalmanalco","0001","Tlalmanalco de Velázquez","49196","23574","25622","12823" -"15","15","México","Mex.","104","Tlalnepantla de Baz","0001","Tlalnepantla","672202","327017","345185","199839" -"15","15","México","Mex.","105","Tlatlaya","0001","Tlatlaya","31762","15626","16136","8562" -"15","15","México","Mex.","106","Toluca","0001","Toluca de Lerdo","910608","439173","471435","239805" -"15","15","México","Mex.","107","Tonatico","0001","Tonatico","12912","6235","6677","3604" -"15","15","México","Mex.","108","Tultepec","0001","Tultepec","157645","77132","80513","42777" -"15","15","México","Mex.","109","Tultitlán","0001","Tultitlán de Mariano Escobedo","516341","251638","264703","145961" -"15","15","México","Mex.","110","Valle de Bravo","0001","Valle de Bravo","61590","30076","31514","16137" -"15","15","México","Mex.","111","Villa de Allende","0001","San José Villa de Allende","53275","25894","27381","12510" -"15","15","México","Mex.","112","Villa del Carbón","0001","Villa del Carbón","51498","25567","25931","12928" -"15","15","México","Mex.","113","Villa Guerrero","0001","Villa Guerrero","69086","33859","35227","17535" -"15","15","México","Mex.","114","Villa Victoria","0001","Villa Victoria","108196","53139","55057","24245" -"15","15","México","Mex.","115","Xonacatlán","0001","Xonacatlán","54633","26758","27875","13118" -"15","15","México","Mex.","116","Zacazonapan","0001","Zacazonapan","5109","2576","2533","1380" -"15","15","México","Mex.","117","Zacualpan","0001","Zacualpan","13522","6456","7066","3565" -"15","15","México","Mex.","118","Zinacantepec","0001","San Miguel Zinacantepec","203872","99506","104366","48816" -"15","15","México","Mex.","119","Zumpahuacán","0001","Zumpahuacán","18833","9088","9745","4556" -"15","15","México","Mex.","120","Zumpango","0001","Zumpango de Ocampo","280455","136971","143484","78027" -"15","15","México","Mex.","121","Cuautitlán Izcalli","0001","Cuautitlán Izcalli","555163","268956","286207","160854" -"15","15","México","Mex.","122","Valle de Chalco Solidaridad","0001","Xico","391731","190674","201057","104445" -"15","15","México","Mex.","123","Luvianos","0001","Villa Luvianos","28822","14087","14735","7303" -"15","15","México","Mex.","124","San José del Rincón","0001","San José del Rincón Centro","100082","49033","51049","21815" -"15","15","México","Mex.","125","Tonanitla","0001","Santa María Tonanitla","14883","7253","7630","3958" -"16","16","Michoacán de Ocampo","Mich.","001","Acuitzio","0001","Acuitzio del Canje","11301","5493","5808","2927" -"16","16","Michoacán de Ocampo","Mich.","002","Aguililla","0001","Aguililla","14754","7335","7419","4315" -"16","16","Michoacán de Ocampo","Mich.","003","Álvaro Obregón","0001","Álvaro Obregón","23000","11224","11776","5817" -"16","16","Michoacán de Ocampo","Mich.","004","Angamacutiro","0001","Angamacutiro de la Unión","14943","7195","7748","4157" -"16","16","Michoacán de Ocampo","Mich.","005","Angangueo","0001","Mineral de Angangueo","10892","5274","5618","2652" -"16","16","Michoacán de Ocampo","Mich.","006","Apatzingán","0001","Apatzingán de la Constitución","126191","62153","64038","34328" -"16","16","Michoacán de Ocampo","Mich.","007","Aporo","0001","Aporo","3529","1667","1862","886" -"16","16","Michoacán de Ocampo","Mich.","008","Aquila","0001","Aquila","24676","12429","12247","5802" -"16","16","Michoacán de Ocampo","Mich.","009","Ario","0001","Ario de Rosales","36268","17832","18436","9355" -"16","16","Michoacán de Ocampo","Mich.","010","Arteaga","0001","Arteaga","20332","10058","10274","5757" -"16","16","Michoacán de Ocampo","Mich.","011","Briseñas","0001","Briseñas de Matamoros","11681","5670","6011","3134" -"16","16","Michoacán de Ocampo","Mich.","012","Buenavista","0001","Buenavista Tomatlán","45538","23007","22531","12698" -"16","16","Michoacán de Ocampo","Mich.","013","Carácuaro","0001","Carácuaro de Morelos","9176","4611","4565","2528" -"16","16","Michoacán de Ocampo","Mich.","014","Coahuayana","0001","Coahuayana de Hidalgo","17022","8724","8298","4716" -"16","16","Michoacán de Ocampo","Mich.","015","Coalcomán de Vázquez Pallares","0001","Coalcomán de Vázquez Pallares","19633","9790","9843","5313" -"16","16","Michoacán de Ocampo","Mich.","016","Coeneo","0001","Coeneo de la Libertad","20965","9923","11042","5916" -"16","16","Michoacán de Ocampo","Mich.","017","Contepec","0001","Contepec","35070","16944","18126","9146" -"16","16","Michoacán de Ocampo","Mich.","018","Copándaro","0001","Copándaro de Galeana","9484","4593","4891","2408" -"16","16","Michoacán de Ocampo","Mich.","019","Cotija","0001","Cotija de la Paz","20198","9780","10418","5923" -"16","16","Michoacán de Ocampo","Mich.","020","Cuitzeo","0001","Cuitzeo del Porvenir","29910","14304","15606","7363" -"16","16","Michoacán de Ocampo","Mich.","021","Charapan","0001","Charapan","13539","6436","7103","3595" -"16","16","Michoacán de Ocampo","Mich.","022","Charo","0001","Charo","25138","13622","11516","5626" -"16","16","Michoacán de Ocampo","Mich.","023","Chavinda","0001","Chavinda","10417","5068","5349","3034" -"16","16","Michoacán de Ocampo","Mich.","024","Cherán","0001","Cherán","20586","9953","10633","4822" -"16","16","Michoacán de Ocampo","Mich.","025","Chilchota","0001","Chilchota","40560","19663","20897","9521" -"16","16","Michoacán de Ocampo","Mich.","026","Chinicuila","0001","Villa Victoria","4773","2484","2289","1323" -"16","16","Michoacán de Ocampo","Mich.","027","Chucándiro","0001","Chucándiro","4944","2387","2557","1463" -"16","16","Michoacán de Ocampo","Mich.","028","Churintzio","0001","Churintzio","5233","2527","2706","1686" -"16","16","Michoacán de Ocampo","Mich.","029","Churumuco","0001","Churumuco de Morelos","12342","6014","6328","3161" -"16","16","Michoacán de Ocampo","Mich.","030","Ecuandureo","0001","Ecuandureo","11850","5551","6299","3659" -"16","16","Michoacán de Ocampo","Mich.","031","Epitacio Huerta","0001","Epitacio Huerta","16112","7769","8343","4611" -"16","16","Michoacán de Ocampo","Mich.","032","Erongarícuaro","0001","Erongarícuaro","15715","7630","8085","3947" -"16","16","Michoacán de Ocampo","Mich.","033","Gabriel Zamora","0001","Lombardía","21466","10591","10875","6181" -"16","16","Michoacán de Ocampo","Mich.","034","Hidalgo","0001","Ciudad Hidalgo","125712","60614","65098","31187" -"16","16","Michoacán de Ocampo","Mich.","035","La Huacana","0001","La Huacana","30627","15173","15454","8402" -"16","16","Michoacán de Ocampo","Mich.","036","Huandacareo","0001","Huandacareo","11644","5574","6070","3417" -"16","16","Michoacán de Ocampo","Mich.","037","Huaniqueo","0001","Huaniqueo de Morales","7945","3738","4207","2512" -"16","16","Michoacán de Ocampo","Mich.","038","Huetamo","0001","Huetamo de Núñez","41973","20664","21309","12192" -"16","16","Michoacán de Ocampo","Mich.","039","Huiramba","0001","Huiramba","9015","4344","4671","2237" -"16","16","Michoacán de Ocampo","Mich.","040","Indaparapeo","0001","Indaparapeo","18385","8998","9387","4651" -"16","16","Michoacán de Ocampo","Mich.","041","Irimbo","0001","Irimbo","16043","7671","8372","4159" -"16","16","Michoacán de Ocampo","Mich.","042","Ixtlán","0001","Ixtlán de los Hervores","14302","7017","7285","3951" -"16","16","Michoacán de Ocampo","Mich.","043","Jacona","0001","Jacona de Plancarte","68781","33339","35442","17960" -"16","16","Michoacán de Ocampo","Mich.","044","Jiménez","0001","Villa Jiménez","12946","6281","6665","3945" -"16","16","Michoacán de Ocampo","Mich.","045","Jiquilpan","0001","Jiquilpan de Juárez","36158","17236","18922","10581" -"16","16","Michoacán de Ocampo","Mich.","046","Juárez","0001","Benito Juárez","14936","7316","7620","4082" -"16","16","Michoacán de Ocampo","Mich.","047","Jungapeo","0001","Jungapeo de Juárez","19834","9832","10002","5052" -"16","16","Michoacán de Ocampo","Mich.","048","Lagunillas","0001","Lagunillas","5745","2813","2932","1501" -"16","16","Michoacán de Ocampo","Mich.","049","Madero","0001","Villa Madero","19086","9629","9457","4662" -"16","16","Michoacán de Ocampo","Mich.","050","Maravatío","0001","Maravatío de Ocampo","89311","43191","46120","22728" -"16","16","Michoacán de Ocampo","Mich.","051","Marcos Castellanos","0001","San José de Gracia","13983","6742","7241","4191" -"16","16","Michoacán de Ocampo","Mich.","052","Lázaro Cárdenas","0001","Ciudad Lázaro Cárdenas","196003","97484","98519","55762" -"16","16","Michoacán de Ocampo","Mich.","053","Morelia","0001","Morelia","849053","407129","441924","244509" -"16","16","Michoacán de Ocampo","Mich.","054","Morelos","0001","Villa Morelos","7983","3787","4196","2278" -"16","16","Michoacán de Ocampo","Mich.","055","Múgica","0001","Nueva Italia de Ruiz","45732","22403","23329","12045" -"16","16","Michoacán de Ocampo","Mich.","056","Nahuatzen","0001","Nahuatzen","32598","15962","16636","7505" -"16","16","Michoacán de Ocampo","Mich.","057","Nocupétaro","0001","Nocupétaro de Morelos","8196","4031","4165","2226" -"16","16","Michoacán de Ocampo","Mich.","058","Nuevo Parangaricutiro","0001","Nuevo San Juan Parangaricutiro","20981","10313","10668","4877" -"16","16","Michoacán de Ocampo","Mich.","059","Nuevo Urecho","0001","Nuevo Urecho","9027","4556","4471","2615" -"16","16","Michoacán de Ocampo","Mich.","060","Numarán","0001","Numarán","9437","4596","4841","2428" -"16","16","Michoacán de Ocampo","Mich.","061","Ocampo","0001","Ocampo","24774","12202","12572","5906" -"16","16","Michoacán de Ocampo","Mich.","062","Pajacuarán","0001","Pajacuarán","21028","10210","10818","5590" -"16","16","Michoacán de Ocampo","Mich.","063","Panindícuaro","0001","Panindícuaro","14889","7176","7713","4186" -"16","16","Michoacán de Ocampo","Mich.","064","Parácuaro","0001","Parácuaro","26832","13472","13360","7198" -"16","16","Michoacán de Ocampo","Mich.","065","Paracho","0001","Paracho de Verduzco","39657","19255","20402","9585" -"16","16","Michoacán de Ocampo","Mich.","066","Pátzcuaro","0001","Pátzcuaro","98382","47220","51162","24408" -"16","16","Michoacán de Ocampo","Mich.","067","Penjamillo","0001","Penjamillo de Degollado","16621","7860","8761","4835" -"16","16","Michoacán de Ocampo","Mich.","068","Peribán","0001","Peribán de Ramos","29389","14773","14616","7515" -"16","16","Michoacán de Ocampo","Mich.","069","La Piedad","0001","La Piedad de Cabadas","106490","51481","55009","29576" -"16","16","Michoacán de Ocampo","Mich.","070","Purépero","0001","Purépero de Echáiz","15503","7593","7910","4466" -"16","16","Michoacán de Ocampo","Mich.","071","Puruándiro","0001","Puruándiro","69260","33311","35949","18508" -"16","16","Michoacán de Ocampo","Mich.","072","Queréndaro","0001","Queréndaro","13961","6810","7151","3664" -"16","16","Michoacán de Ocampo","Mich.","073","Quiroga","0001","Quiroga","27176","12923","14253","6923" -"16","16","Michoacán de Ocampo","Mich.","074","Cojumatlán de Régules","0001","Cojumatlán de Régules","10553","5321","5232","2944" -"16","16","Michoacán de Ocampo","Mich.","075","Los Reyes","0001","Los Reyes de Salgado","78935","38758","40177","21260" -"16","16","Michoacán de Ocampo","Mich.","076","Sahuayo","0001","Sahuayo de Morelos","78477","37897","40580","21599" -"16","16","Michoacán de Ocampo","Mich.","077","San Lucas","0001","San Lucas","17677","8750","8927","5310" -"16","16","Michoacán de Ocampo","Mich.","078","Santa Ana Maya","0001","Santa Ana Maya","12812","6117","6695","3453" -"16","16","Michoacán de Ocampo","Mich.","079","Salvador Escalante","0001","Santa Clara del Cobre","49896","24402","25494","11630" -"16","16","Michoacán de Ocampo","Mich.","080","Senguio","0001","Senguio","19833","9425","10408","5014" -"16","16","Michoacán de Ocampo","Mich.","081","Susupuato","0001","Susupuato de Guerrero","9076","4459","4617","2402" -"16","16","Michoacán de Ocampo","Mich.","082","Tacámbaro","0001","Tacámbaro de Codallos","79540","38966","40574","20425" -"16","16","Michoacán de Ocampo","Mich.","083","Tancítaro","0001","Tancítaro","33453","16736","16717","8164" -"16","16","Michoacán de Ocampo","Mich.","084","Tangamandapio","0001","Santiago Tangamandapio","31716","15486","16230","7334" -"16","16","Michoacán de Ocampo","Mich.","085","Tangancícuaro","0001","Tangancícuaro de Arista","35256","17182","18074","9612" -"16","16","Michoacán de Ocampo","Mich.","086","Tanhuato","0001","Tanhuato de Guerrero","15534","7503","8031","4192" -"16","16","Michoacán de Ocampo","Mich.","087","Taretan","0001","Taretan","15589","7676","7913","4247" -"16","16","Michoacán de Ocampo","Mich.","088","Tarímbaro","0001","Tarímbaro","114513","55749","58764","33151" -"16","16","Michoacán de Ocampo","Mich.","089","Tepalcatepec","0001","Tepalcatepec","24074","12010","12064","7285" -"16","16","Michoacán de Ocampo","Mich.","090","Tingambato","0001","Tingambato","16325","7936","8389","3858" -"16","16","Michoacán de Ocampo","Mich.","091","Tingüindín","0001","Tingüindín","14934","7175","7759","4196" -"16","16","Michoacán de Ocampo","Mich.","092","Tiquicheo de Nicolás Romero","0001","Tiquicheo","12836","6292","6544","3458" -"16","16","Michoacán de Ocampo","Mich.","093","Tlalpujahua","0001","Tlalpujahua de Rayón","28556","13413","15143","7287" -"16","16","Michoacán de Ocampo","Mich.","094","Tlazazalca","0001","Tlazazalca","6420","3112","3308","2052" -"16","16","Michoacán de Ocampo","Mich.","095","Tocumbo","0001","Tocumbo","12325","6075","6250","3636" -"16","16","Michoacán de Ocampo","Mich.","096","Tumbiscatío","0001","Tumbiscatío de Ruiz","5971","3013","2958","1685" -"16","16","Michoacán de Ocampo","Mich.","097","Turicato","0001","Turicato","29056","14143","14913","7728" -"16","16","Michoacán de Ocampo","Mich.","098","Tuxpan","0001","Tuxpan","25757","12493","13264","6982" -"16","16","Michoacán de Ocampo","Mich.","099","Tuzantla","0001","Tuzantla","14329","7044","7285","3952" -"16","16","Michoacán de Ocampo","Mich.","100","Tzintzuntzan","0001","Tzintzuntzan","14911","7133","7778","3730" -"16","16","Michoacán de Ocampo","Mich.","101","Tzitzio","0001","Tzitzio","8855","4427","4428","2210" -"16","16","Michoacán de Ocampo","Mich.","102","Uruapan","0001","Uruapan","356786","172310","184476","94101" -"16","16","Michoacán de Ocampo","Mich.","103","Venustiano Carranza","0001","San Pedro Cahro","23469","11241","12228","6556" -"16","16","Michoacán de Ocampo","Mich.","104","Villamar","0001","Villamar","15864","7631","8233","4629" -"16","16","Michoacán de Ocampo","Mich.","105","Vista Hermosa","0001","Vista Hermosa de Negrete","20982","10359","10623","5465" -"16","16","Michoacán de Ocampo","Mich.","106","Yurécuaro","0001","Yurécuaro","32303","15671","16632","8354" -"16","16","Michoacán de Ocampo","Mich.","107","Zacapu","0001","Zacapu","76829","36886","39943","21125" -"16","16","Michoacán de Ocampo","Mich.","108","Zamora","0001","Zamora de Hidalgo","204860","98819","106041","58299" -"16","16","Michoacán de Ocampo","Mich.","109","Zináparo","0001","Zináparo","3232","1553","1679","1016" -"16","16","Michoacán de Ocampo","Mich.","110","Zinapécuaro","0001","Zinapécuaro de Figueroa","49005","23660","25345","13211" -"16","16","Michoacán de Ocampo","Mich.","111","Ziracuaretiro","0001","Ziracuaretiro","18402","9061","9341","4320" -"16","16","Michoacán de Ocampo","Mich.","112","Zitácuaro","0001","Heróica Zitácuaro","157056","75453","81603","40666" -"16","16","Michoacán de Ocampo","Mich.","113","José Sixto Verduzco","0001","Pastor Ortiz","26213","12584","13629","7146" -"17","17","Morelos","Mor.","001","Amacuzac","0001","Amacuzac","17598","8449","9149","4992" -"17","17","Morelos","Mor.","002","Atlatlahucan","0001","Atlatlahucan","25232","12266","12966","7060" -"17","17","Morelos","Mor.","003","Axochiapan","0001","Axochiapan","39174","19288","19886","9978" -"17","17","Morelos","Mor.","004","Ayala","0001","Ciudad Ayala","89834","43542","46292","25051" -"17","17","Morelos","Mor.","005","Coatlán del Río","0001","Coatlán del Río","10520","4738","5782","2996" -"17","17","Morelos","Mor.","006","Cuautla","0001","Cuautla","187118","89783","97335","52396" -"17","17","Morelos","Mor.","007","Cuernavaca","0001","Cuernavaca","378476","178729","199747","114742" -"17","17","Morelos","Mor.","008","Emiliano Zapata","0001","Emiliano Zapata","107053","52008","55045","31160" -"17","17","Morelos","Mor.","009","Huitzilac","0001","Huitzilac","24515","11976","12539","6704" -"17","17","Morelos","Mor.","010","Jantetelco","0001","Jantetelco","18402","8998","9404","5135" -"17","17","Morelos","Mor.","011","Jiutepec","0001","Jiutepec","215357","103119","112238","61620" -"17","17","Morelos","Mor.","012","Jojutla","0001","Jojutla","57682","27820","29862","16963" -"17","17","Morelos","Mor.","013","Jonacatepec de Leandro Valle","0001","Jonacatepec de Leandro Valle","16694","8076","8618","4488" -"17","17","Morelos","Mor.","014","Mazatepec","0001","Mazatepec","9653","4603","5050","2902" -"17","17","Morelos","Mor.","015","Miacatlán","0001","Miacatlán","15802","7761","8041","4591" -"17","17","Morelos","Mor.","016","Ocuituco","0001","Ocuituco","19219","9425","9794","4991" -"17","17","Morelos","Mor.","017","Puente de Ixtla","0001","Puente de Ixtla","40018","19070","20948","11307" -"17","17","Morelos","Mor.","018","Temixco","0001","Temixco","122263","58986","63277","34720" -"17","17","Morelos","Mor.","019","Tepalcingo","0001","Tepalcingo","28122","13841","14281","7788" -"17","17","Morelos","Mor.","020","Tepoztlán","0001","Tepoztlán","54987","26842","28145","15585" -"17","17","Morelos","Mor.","021","Tetecala","0001","Tetecala","7617","3693","3924","2387" -"17","17","Morelos","Mor.","022","Tetela del Volcán","0001","Tetela del Volcán","14853","7304","7549","3802" -"17","17","Morelos","Mor.","023","Tlalnepantla","0001","Tlalnepantla","7943","3981","3962","2051" -"17","17","Morelos","Mor.","024","Tlaltizapán de Zapata","0001","Tlaltizapán","52399","25525","26874","15162" -"17","17","Morelos","Mor.","025","Tlaquiltenango","0001","Tlaquiltenango","33789","16460","17329","10113" -"17","17","Morelos","Mor.","026","Tlayacapan","0001","Tlayacapan","19408","9629","9779","5085" -"17","17","Morelos","Mor.","027","Totolapan","0001","Totolapan","12750","6202","6548","3593" -"17","17","Morelos","Mor.","028","Xochitepec","0001","Xochitepec","73539","36910","36629","19669" -"17","17","Morelos","Mor.","029","Yautepec","0001","Yautepec de Zaragoza","105780","51099","54681","30552" -"17","17","Morelos","Mor.","030","Yecapixtla","0001","Yecapixtla","56083","27650","28433","14652" -"17","17","Morelos","Mor.","031","Zacatepec","0001","Zacatepec de Hidalgo","36094","17232","18862","10566" -"17","17","Morelos","Mor.","032","Zacualpan de Amilpas","0001","Zacualpan de Amilpas","9965","4857","5108","2832" -"17","17","Morelos","Mor.","033","Temoac","0001","Temoac","16574","7910","8664","4187" -"17","17","Morelos","Mor.","034","Coatetelco","0001","Coatetelco Centro","11347","5470","5877","2814" -"17","17","Morelos","Mor.","035","Xoxocotla","0001","Xoxocotla Centro","27805","13881","13924","6342" -"17","17","Morelos","Mor.","036","Hueyapan","0001","Barrio de San Miguel","7855","3724","4131","1965" -"18","18","Nayarit","Nay.","001","Acaponeta","0001","Acaponeta","37232","18615","18617","10864" -"18","18","Nayarit","Nay.","002","Ahuacatlán","0001","Ahuacatlán","15393","7639","7754","4824" -"18","18","Nayarit","Nay.","003","Amatlán de Cañas","0001","Amatlán de Cañas","11536","5868","5668","3666" -"18","18","Nayarit","Nay.","004","Compostela","0001","Compostela","77436","38570","38866","23416" -"18","18","Nayarit","Nay.","005","Huajicori","0001","Huajicori","12230","6232","5998","2801" -"18","18","Nayarit","Nay.","006","Ixtlán del Río","0001","Ixtlán del Río","29299","14144","15155","8542" -"18","18","Nayarit","Nay.","007","Jala","0001","Jala","19321","9553","9768","5021" -"18","18","Nayarit","Nay.","008","Xalisco","0001","Xalisco","65229","31722","33507","18689" -"18","18","Nayarit","Nay.","009","Del Nayar","0001","Jesús María","47550","23461","24089","8952" -"18","18","Nayarit","Nay.","010","Rosamorada","0001","Rosamorada","33567","17083","16484","10219" -"18","18","Nayarit","Nay.","011","Ruíz","0001","Ruiz","24096","12119","11977","6930" -"18","18","Nayarit","Nay.","012","San Blas","0001","San Blas","41518","21277","20241","13009" -"18","18","Nayarit","Nay.","013","San Pedro Lagunillas","0001","San Pedro Lagunillas","7683","3922","3761","2470" -"18","18","Nayarit","Nay.","014","Santa María del Oro","0001","Santa María del Oro","24911","12549","12362","7149" -"18","18","Nayarit","Nay.","015","Santiago Ixcuintla","0001","Santiago Ixcuintla","93981","47466","46515","28958" -"18","18","Nayarit","Nay.","016","Tecuala","0001","Tecuala","37135","18842","18293","11687" -"18","18","Nayarit","Nay.","017","Tepic","0001","Tepic","425924","207092","218832","126275" -"18","18","Nayarit","Nay.","018","Tuxpan","0001","Tuxpan","30064","14972","15092","9494" -"18","18","Nayarit","Nay.","019","La Yesca","0001","La Yesca","13719","6858","6861","3342" -"18","18","Nayarit","Nay.","020","Bahía de Banderas","0001","Valle de Banderas","187632","94294","93338","55288" -"19","19","Nuevo León","NL","001","Abasolo","0001","Abasolo","2974","1442","1532","802" -"19","19","Nuevo León","NL","002","Agualeguas","0001","Agualeguas","3382","1690","1692","1275" -"19","19","Nuevo León","NL","003","Los Aldamas","0001","Los Aldamas","1407","699","708","541" -"19","19","Nuevo León","NL","004","Allende","0001","Ciudad de Allende","35289","17829","17460","10708" -"19","19","Nuevo León","NL","005","Anáhuac","0001","Anáhuac","18030","8852","9178","5468" -"19","19","Nuevo León","NL","006","Apodaca","0001","Ciudad Apodaca","656464","331513","324951","181728" -"19","19","Nuevo León","NL","007","Aramberri","0001","Aramberri","14992","7667","7325","4276" -"19","19","Nuevo León","NL","008","Bustamante","0001","Bustamante","3661","1824","1837","1182" -"19","19","Nuevo León","NL","009","Cadereyta Jiménez","0001","Cadereyta Jiménez","122337","62377","59960","37366" -"19","19","Nuevo León","NL","010","El Carmen","0001","Carmen","104478","52883","51595","30044" -"19","19","Nuevo León","NL","011","Cerralvo","0001","Ciudad Cerralvo","7340","3707","3633","2456" -"19","19","Nuevo León","NL","012","Ciénega de Flores","0001","Ciénega de Flores","68747","35206","33541","20455" -"19","19","Nuevo León","NL","013","China","0001","China","9930","4961","4969","3268" -"19","19","Nuevo León","NL","014","Doctor Arroyo","0001","Doctor Arroyo","36088","18060","18028","9229" -"19","19","Nuevo León","NL","015","Doctor Coss","0001","Doctor Coss","1360","657","703","494" -"19","19","Nuevo León","NL","016","Doctor González","0001","Doctor González","3256","1672","1584","1029" -"19","19","Nuevo León","NL","017","Galeana","0001","Galeana","40903","20444","20459","11185" -"19","19","Nuevo León","NL","018","García","0001","García","397205","200708","196497","114900" -"19","19","Nuevo León","NL","019","San Pedro Garza García","0001","San Pedro Garza García","132169","62586","69583","37754" -"19","19","Nuevo León","NL","020","General Bravo","0001","General Bravo","5506","2796","2710","1759" -"19","19","Nuevo León","NL","021","General Escobedo","0001","Ciudad General Escobedo","481213","242161","239052","131741" -"19","19","Nuevo León","NL","022","General Terán","0001","Ciudad General Terán","14109","7115","6994","4638" -"19","19","Nuevo León","NL","023","General Treviño","0001","General Treviño","1808","890","918","660" -"19","19","Nuevo León","NL","024","General Zaragoza","0001","General Zaragoza","6282","3224","3058","1657" -"19","19","Nuevo León","NL","025","General Zuazua","0001","General Zuazua","102149","51844","50305","29632" -"19","19","Nuevo León","NL","026","Guadalupe","0001","Guadalupe","643143","318993","324150","182548" -"19","19","Nuevo León","NL","027","Los Herreras","0001","Los Herreras","1959","989","970","731" -"19","19","Nuevo León","NL","028","Higueras","0001","Higueras","1386","724","662","422" -"19","19","Nuevo León","NL","029","Hualahuises","0001","Hualahuises","7026","3480","3546","2164" -"19","19","Nuevo León","NL","030","Iturbide","0001","Iturbide","3298","1716","1582","998" -"19","19","Nuevo León","NL","031","Juárez","0001","Ciudad Benito Juárez","471523","237717","233806","134444" -"19","19","Nuevo León","NL","032","Lampazos de Naranjo","0001","Lampazos de Naranjo","5351","2657","2694","1663" -"19","19","Nuevo León","NL","033","Linares","0001","Linares","84666","41878","42788","24528" -"19","19","Nuevo León","NL","034","Marín","0001","Marín","5119","2639","2480","1441" -"19","19","Nuevo León","NL","035","Melchor Ocampo","0001","Melchor Ocampo","1483","764","719","462" -"19","19","Nuevo León","NL","036","Mier y Noriega","0001","Mier y Noriega","7652","3795","3857","1881" -"19","19","Nuevo León","NL","037","Mina","0001","Mina","6048","3056","2992","1707" -"19","19","Nuevo León","NL","038","Montemorelos","0001","Montemorelos","67428","33569","33859","20912" -"19","19","Nuevo León","NL","039","Monterrey","0001","Monterrey","1142994","564805","578189","329095" -"19","19","Nuevo León","NL","040","Parás","0001","Parás","906","457","449","334" -"19","19","Nuevo León","NL","041","Pesquería","0001","Pesquería","147624","76004","71620","43681" -"19","19","Nuevo León","NL","042","Los Ramones","0001","Los Ramones","5389","2776","2613","1861" -"19","19","Nuevo León","NL","043","Rayones","0001","Rayones","2377","1230","1147","772" -"19","19","Nuevo León","NL","044","Sabinas Hidalgo","0001","Ciudad Sabinas Hidalgo","34709","17035","17674","10799" -"19","19","Nuevo León","NL","045","Salinas Victoria","0001","Salinas Victoria","86766","44135","42631","25430" -"19","19","Nuevo León","NL","046","San Nicolás de los Garza","0001","San Nicolás de los Garza","412199","202958","209241","121798" -"19","19","Nuevo León","NL","047","Hidalgo","0001","Hidalgo","16086","8082","8004","4581" -"19","19","Nuevo León","NL","048","Santa Catarina","0001","Ciudad Santa Catarina","306322","152617","153705","82925" -"19","19","Nuevo León","NL","049","Santiago","0001","Santiago","46784","23460","23324","14435" -"19","19","Nuevo León","NL","050","Vallecillo","0001","Vallecillo","1552","820","732","564" -"19","19","Nuevo León","NL","051","Villaldama","0001","Ciudad de Villaldama","3573","1787","1786","1267" -"20","20","Oaxaca","Oax.","001","Abejones","0001","Abejones","841","360","481","217" -"20","20","Oaxaca","Oax.","002","Acatlán de Pérez Figueroa","0001","Acatlán de Pérez Figueroa","45167","21980","23187","13012" -"20","20","Oaxaca","Oax.","003","Asunción Cacalotepec","0001","Asunción Cacalotepec","2547","1229","1318","795" -"20","20","Oaxaca","Oax.","004","Asunción Cuyotepeji","0001","Asunción Cuyotepeji","1107","523","584","341" -"20","20","Oaxaca","Oax.","005","Asunción Ixtaltepec","0001","Asunción Ixtaltepec","15261","7550","7711","4955" -"20","20","Oaxaca","Oax.","006","Asunción Nochixtlán","0001","Asunción Nochixtlán","20464","9577","10887","5344" -"20","20","Oaxaca","Oax.","007","Asunción Ocotlán","0001","Asunción Ocotlán","2395","1091","1304","769" -"20","20","Oaxaca","Oax.","008","Asunción Tlacolulita","0001","Asunción Tlacolulita","734","355","379","268" -"20","20","Oaxaca","Oax.","009","Ayotzintepec","0001","Ayotzintepec","6857","3283","3574","1948" -"20","20","Oaxaca","Oax.","010","El Barrio de la Soledad","0001","El Barrio de la Soledad","13474","6502","6972","4336" -"20","20","Oaxaca","Oax.","011","Calihualá","0001","Calihualá","1402","690","712","340" -"20","20","Oaxaca","Oax.","012","Candelaria Loxicha","0001","Candelaria Loxicha","11166","5450","5716","2465" -"20","20","Oaxaca","Oax.","013","Ciénega de Zimatlán","0001","Ciénega de Zimatlán","3043","1464","1579","896" -"20","20","Oaxaca","Oax.","014","Ciudad Ixtepec","0001","Ciudad Ixtepec","28082","13299","14783","8608" -"20","20","Oaxaca","Oax.","015","Coatecas Altas","0001","Coatecas Altas","5356","2527","2829","1212" -"20","20","Oaxaca","Oax.","016","Coicoyán de las Flores","0001","Coicoyán de las Flores","9563","4460","5103","1677" -"20","20","Oaxaca","Oax.","017","La Compañía","0001","La Compañía","3607","1701","1906","1061" -"20","20","Oaxaca","Oax.","018","Concepción Buenavista","0001","Concepción Buenavista","752","375","377","237" -"20","20","Oaxaca","Oax.","019","Concepción Pápalo","0001","Concepción Pápalo","2754","1376","1378","855" -"20","20","Oaxaca","Oax.","020","Constancia del Rosario","0001","Constancia del Rosario","4847","2175","2672","1057" -"20","20","Oaxaca","Oax.","021","Cosolapa","0001","Cosolapa","14488","6846","7642","4128" -"20","20","Oaxaca","Oax.","022","Cosoltepec","0001","Cosoltepec","803","385","418","297" -"20","20","Oaxaca","Oax.","023","Cuilápam de Guerrero","0001","Cuilápam de Guerrero","26882","12863","14019","6984" -"20","20","Oaxaca","Oax.","024","Cuyamecalco Villa de Zaragoza","0001","Cuyamecalco Villa de Zaragoza","3644","1847","1797","1024" -"20","20","Oaxaca","Oax.","025","Chahuites","0001","Chahuites","11356","5569","5787","3278" -"20","20","Oaxaca","Oax.","026","Chalcatongo de Hidalgo","0001","Chalcatongo de Hidalgo","9035","4237","4798","2570" -"20","20","Oaxaca","Oax.","027","Chiquihuitlán de Benito Juárez","0001","Chiquihuitlán de Benito Juárez","2179","994","1185","744" -"20","20","Oaxaca","Oax.","028","Heroica Ciudad de Ejutla de Crespo","0001","Heroica Ciudad de Ejutla de Crespo","23148","11079","12069","6077" -"20","20","Oaxaca","Oax.","029","Eloxochitlán de Flores Magón","0001","Eloxochitlán de Flores Magón","4215","1995","2220","1166" -"20","20","Oaxaca","Oax.","030","El Espinal","0001","El Espinal","8730","4239","4491","2584" -"20","20","Oaxaca","Oax.","031","Tamazulápam del Espíritu Santo","0001","Tamazulápam del Espíritu Santo","7185","3204","3981","2038" -"20","20","Oaxaca","Oax.","032","Fresnillo de Trujano","0001","Fresnillo de Trujano","1077","538","539","319" -"20","20","Oaxaca","Oax.","033","Guadalupe Etla","0001","Guadalupe Etla","2929","1397","1532","772" -"20","20","Oaxaca","Oax.","034","Guadalupe de Ramírez","0001","Guadalupe de Ramírez","1288","614","674","387" -"20","20","Oaxaca","Oax.","035","Guelatao de Juárez","0001","Guelatao de Juárez","657","325","332","166" -"20","20","Oaxaca","Oax.","036","Guevea de Humboldt","0001","Guevea de Humboldt","5256","2485","2771","1522" -"20","20","Oaxaca","Oax.","037","Mesones Hidalgo","0001","Mesones Hidalgo","4424","2051","2373","1133" -"20","20","Oaxaca","Oax.","038","Villa Hidalgo Yalálag","0001","Villa Hidalgo","1885","900","985","529" -"20","20","Oaxaca","Oax.","039","Heroica Ciudad de Huajuapan de León","0001","Heroica Ciudad de Huajuapan de León","78313","37162","41151","20369" -"20","20","Oaxaca","Oax.","040","Huautepec","0001","Huautepec","6385","2977","3408","1650" -"20","20","Oaxaca","Oax.","041","Huautla de Jiménez","0001","Huautla de Jiménez","31710","14628","17082","8799" -"20","20","Oaxaca","Oax.","042","Ixtlán de Juárez","0001","Ixtlán de Juárez","8385","4036","4349","2318" -"20","20","Oaxaca","Oax.","043","Juchitán de Zaragoza","0001","Juchitán de Zaragoza","113570","54616","58954","28774" -"20","20","Oaxaca","Oax.","044","Loma Bonita","0001","Loma Bonita","40934","19493","21441","12804" -"20","20","Oaxaca","Oax.","045","Magdalena Apasco","0001","Magdalena Apasco","7888","3740","4148","2185" -"20","20","Oaxaca","Oax.","046","Magdalena Jaltepec","0001","Magdalena Jaltepec","2943","1339","1604","934" -"20","20","Oaxaca","Oax.","047","Santa Magdalena Jicotlán","0001","Santa Magdalena Jicotlán","81","41","40","30" -"20","20","Oaxaca","Oax.","048","Magdalena Mixtepec","0001","Magdalena Mixtepec","1433","692","741","283" -"20","20","Oaxaca","Oax.","049","Magdalena Ocotlán","0001","Magdalena Ocotlán","1184","585","599","315" -"20","20","Oaxaca","Oax.","050","Magdalena Peñasco","0001","Magdalena Peñasco","3750","1770","1980","983" -"20","20","Oaxaca","Oax.","051","Magdalena Teitipac","0001","Magdalena Teitipac","4764","2221","2543","1012" -"20","20","Oaxaca","Oax.","052","Magdalena Tequisistlán","0001","Magdalena Tequisistlán","5996","2939","3057","1888" -"20","20","Oaxaca","Oax.","053","Magdalena Tlacotepec","0001","Magdalena Tlacotepec","1297","622","675","421" -"20","20","Oaxaca","Oax.","054","Magdalena Zahuatlán","0001","Magdalena Zahuatlán","404","189","215","130" -"20","20","Oaxaca","Oax.","055","Mariscala de Juárez","0001","Mariscala de Juárez","3739","1787","1952","1076" -"20","20","Oaxaca","Oax.","056","Mártires de Tacubaya","0001","Mártires de Tacubaya","1446","710","736","411" -"20","20","Oaxaca","Oax.","057","Matías Romero Avendaño","0001","Matías Romero Avendaño","38183","18176","20007","11358" -"20","20","Oaxaca","Oax.","058","Mazatlán Villa de Flores","0001","Mazatlán Villa de Flores","12722","6233","6489","3591" -"20","20","Oaxaca","Oax.","059","Miahuatlán de Porfirio Díaz","0001","Miahuatlán de Porfirio Díaz","50375","24603","25772","13064" -"20","20","Oaxaca","Oax.","060","Mixistlán de la Reforma","0001","Mixistlán de la Reforma","2487","1142","1345","647" -"20","20","Oaxaca","Oax.","061","Monjas","0001","Monjas","2893","1331","1562","801" -"20","20","Oaxaca","Oax.","062","Natividad","0001","Natividad","498","222","276","155" -"20","20","Oaxaca","Oax.","063","Nazareno Etla","0001","Nazareno Etla","4293","2056","2237","1129" -"20","20","Oaxaca","Oax.","064","Nejapa de Madero","0001","Nejapa de Madero","8494","4167","4327","2382" -"20","20","Oaxaca","Oax.","065","Ixpantepec Nieves","0001","Ixpantepec Nieves","1079","487","592","350" -"20","20","Oaxaca","Oax.","066","Santiago Niltepec","0001","Santiago Niltepec","5342","2615","2727","1744" -"20","20","Oaxaca","Oax.","067","Oaxaca de Juárez","0001","Oaxaca de Juárez","270955","125852","145103","74590" -"20","20","Oaxaca","Oax.","068","Ocotlán de Morelos","0001","Ocotlán de Morelos","23751","11337","12414","6048" -"20","20","Oaxaca","Oax.","069","La Pe","0001","La Pe","3052","1515","1537","780" -"20","20","Oaxaca","Oax.","070","Pinotepa de Don Luis","0001","Pinotepa de Don Luis","6416","3162","3254","1666" -"20","20","Oaxaca","Oax.","071","Pluma Hidalgo","0001","Pluma Hidalgo","3255","1580","1675","861" -"20","20","Oaxaca","Oax.","072","San José del Progreso","0001","San José del Progreso","8059","3853","4206","2099" -"20","20","Oaxaca","Oax.","073","Putla Villa de Guerrero","0001","Putla Villa de Guerrero","34652","16189","18463","9376" -"20","20","Oaxaca","Oax.","074","Santa Catarina Quioquitani","0001","Santa Catarina Quioquitani","456","231","225","128" -"20","20","Oaxaca","Oax.","075","Reforma de Pineda","0001","Reforma de Pineda","2660","1282","1378","977" -"20","20","Oaxaca","Oax.","076","La Reforma","0001","La Reforma","3411","1675","1736","902" -"20","20","Oaxaca","Oax.","077","Reyes Etla","0001","Reyes Etla","4370","2105","2265","1085" -"20","20","Oaxaca","Oax.","078","Rojas de Cuauhtémoc","0001","Rojas de Cuauhtémoc","1301","633","668","378" -"20","20","Oaxaca","Oax.","079","Salina Cruz","0001","Salina Cruz","84438","40443","43995","25593" -"20","20","Oaxaca","Oax.","080","San Agustín Amatengo","0001","San Agustín Amatengo","1593","783","810","533" -"20","20","Oaxaca","Oax.","081","San Agustín Atenango","0001","San Agustín Atenango","1871","908","963","590" -"20","20","Oaxaca","Oax.","082","San Agustín Chayuco","0001","San Agustín Chayuco","4163","2023","2140","1175" -"20","20","Oaxaca","Oax.","083","San Agustín de las Juntas","0001","San Agustín de las Juntas","11391","5507","5884","2991" -"20","20","Oaxaca","Oax.","084","San Agustín Etla","0001","San Agustín Etla","4168","1984","2184","1201" -"20","20","Oaxaca","Oax.","085","San Agustín Loxicha","0001","San Agustín Loxicha","26194","12778","13416","5465" -"20","20","Oaxaca","Oax.","086","San Agustín Tlacotepec","0001","San Agustín Tlacotepec","1032","456","576","331" -"20","20","Oaxaca","Oax.","087","San Agustín Yatareni","0001","San Agustín Yatareni","5521","2590","2931","1428" -"20","20","Oaxaca","Oax.","088","San Andrés Cabecera Nueva","0001","San Andrés Cabecera Nueva","2881","1395","1486","807" -"20","20","Oaxaca","Oax.","089","San Andrés Dinicuiti","0001","San Andrés Dinicuiti","2308","1123","1185","616" -"20","20","Oaxaca","Oax.","090","San Andrés Huaxpaltepec","0001","San Andrés Huaxpaltepec","6234","2994","3240","1793" -"20","20","Oaxaca","Oax.","091","San Andrés Huayápam","0001","San Andrés Huayápam","6279","3000","3279","1850" -"20","20","Oaxaca","Oax.","092","San Andrés Ixtlahuaca","0001","San Andrés Ixtlahuaca","1776","845","931","494" -"20","20","Oaxaca","Oax.","093","San Andrés Lagunas","0001","San Andrés Lagunas","518","247","271","181" -"20","20","Oaxaca","Oax.","094","San Andrés Nuxiño","0001","San Andrés Nuxiño","1850","882","968","588" -"20","20","Oaxaca","Oax.","095","San Andrés Paxtlán","0001","San Andrés Paxtlán","4562","2295","2267","1030" -"20","20","Oaxaca","Oax.","096","San Andrés Sinaxtla","0001","San Andrés Sinaxtla","756","354","402","227" -"20","20","Oaxaca","Oax.","097","San Andrés Solaga","0001","San Andrés Solaga","1771","857","914","527" -"20","20","Oaxaca","Oax.","098","San Andrés Teotilálpam","0001","San Andrés Teotilálpam","4233","1994","2239","1121" -"20","20","Oaxaca","Oax.","099","San Andrés Tepetlapa","0001","San Andrés Tepetlapa","381","183","198","114" -"20","20","Oaxaca","Oax.","100","San Andrés Yaá","0001","San Andrés Yaá","393","184","209","154" -"20","20","Oaxaca","Oax.","101","San Andrés Zabache","0001","San Andrés Zabache","748","337","411","208" -"20","20","Oaxaca","Oax.","102","San Andrés Zautla","0001","San Andrés Zautla","5326","2555","2771","1424" -"20","20","Oaxaca","Oax.","103","San Antonino Castillo Velasco","0001","San Antonino Castillo Velasco","6064","2882","3182","1571" -"20","20","Oaxaca","Oax.","104","San Antonino el Alto","0001","San Antonino el Alto","2705","1346","1359","708" -"20","20","Oaxaca","Oax.","105","San Antonino Monte Verde","0001","San Antonino Monte Verde","7678","3532","4146","1916" -"20","20","Oaxaca","Oax.","106","San Antonio Acutla","0001","San Antonio Acutla","249","126","123","83" -"20","20","Oaxaca","Oax.","107","San Antonio de la Cal","0001","San Antonio de la Cal","26282","12392","13890","6218" -"20","20","Oaxaca","Oax.","108","San Antonio Huitepec","0001","San Antonio Huitepec","2936","1354","1582","808" -"20","20","Oaxaca","Oax.","109","San Antonio Nanahuatípam","0001","San Antonio Nanahuatípam","1232","605","627","339" -"20","20","Oaxaca","Oax.","110","San Antonio Sinicahua","0001","San Antonio Sinicahua","1668","740","928","439" -"20","20","Oaxaca","Oax.","111","San Antonio Tepetlapa","0001","San Antonio Tepetlapa","4873","2316","2557","1125" -"20","20","Oaxaca","Oax.","112","San Baltazar Chichicápam","0001","San Baltazar Chichicápam","2576","1225","1351","872" -"20","20","Oaxaca","Oax.","113","San Baltazar Loxicha","0001","San Baltazar Loxicha","3169","1525","1644","869" -"20","20","Oaxaca","Oax.","114","San Baltazar Yatzachi el Bajo","0001","San Baltazar Yatzachi el Bajo","674","325","349","243" -"20","20","Oaxaca","Oax.","115","San Bartolo Coyotepec","0001","San Bartolo Coyotepec","10391","4998","5393","2847" -"20","20","Oaxaca","Oax.","116","San Bartolomé Ayautla","0001","San Bartolomé Ayautla","4131","1951","2180","1130" -"20","20","Oaxaca","Oax.","117","San Bartolomé Loxicha","0001","San Bartolomé Loxicha","2213","1070","1143","621" -"20","20","Oaxaca","Oax.","118","San Bartolomé Quialana","0001","San Bartolomé Quialana","2389","994","1395","670" -"20","20","Oaxaca","Oax.","119","San Bartolomé Yucuañe","0001","San Bartolomé Yucuañe","735","325","410","218" -"20","20","Oaxaca","Oax.","120","San Bartolomé Zoogocho","0001","San Bartolomé Zoogocho","449","242","207","117" -"20","20","Oaxaca","Oax.","121","San Bartolo Soyaltepec","0001","San Bartolo Soyaltepec","596","289","307","206" -"20","20","Oaxaca","Oax.","122","San Bartolo Yautepec","0001","San Bartolo Yautepec","653","321","332","203" -"20","20","Oaxaca","Oax.","123","San Bernardo Mixtepec","0001","San Bernardo Mixtepec","2829","1355","1474","759" -"20","20","Oaxaca","Oax.","124","Heroica Villa de San Blas Atempa","0001","San Blas Atempa","19696","9771","9925","5093" -"20","20","Oaxaca","Oax.","125","San Carlos Yautepec","0001","San Carlos Yautepec","11662","5866","5796","2950" -"20","20","Oaxaca","Oax.","126","San Cristóbal Amatlán","0001","San Cristóbal Amatlán","5396","2578","2818","1382" -"20","20","Oaxaca","Oax.","127","San Cristóbal Amoltepec","0001","San Cristóbal Amoltepec","1252","576","676","395" -"20","20","Oaxaca","Oax.","128","San Cristóbal Lachirioag","0001","San Cristóbal Lachirioag","1342","636","706","485" -"20","20","Oaxaca","Oax.","129","San Cristóbal Suchixtlahuaca","0001","San Cristóbal Suchixtlahuaca","356","175","181","113" -"20","20","Oaxaca","Oax.","130","San Dionisio del Mar","0001","San Dionisio del Mar","5180","2587","2593","1620" -"20","20","Oaxaca","Oax.","131","San Dionisio Ocotepec","0001","San Dionisio Ocotepec","11411","5413","5998","2797" -"20","20","Oaxaca","Oax.","132","San Dionisio Ocotlán","0001","San Dionisio Ocotlán","1380","666","714","373" -"20","20","Oaxaca","Oax.","133","San Esteban Atatlahuca","0001","San Esteban Atatlahuca","3934","1878","2056","1203" -"20","20","Oaxaca","Oax.","134","San Felipe Jalapa de Díaz","0001","San Felipe Jalapa de Díaz","28500","13405","15095","6921" -"20","20","Oaxaca","Oax.","135","San Felipe Tejalápam","0001","San Felipe Tejalápam","8231","3940","4291","2042" -"20","20","Oaxaca","Oax.","136","San Felipe Usila","0001","San Felipe Usila","12191","5848","6343","2919" -"20","20","Oaxaca","Oax.","137","San Francisco Cahuacuá","0001","San Francisco Cahuacuá","3450","1697","1753","903" -"20","20","Oaxaca","Oax.","138","San Francisco Cajonos","0001","San Francisco Cajonos","451","212","239","165" -"20","20","Oaxaca","Oax.","139","San Francisco Chapulapa","0001","San Francisco Chapulapa","2195","1061","1134","575" -"20","20","Oaxaca","Oax.","140","San Francisco Chindúa","0001","San Francisco Chindúa","812","397","415","243" -"20","20","Oaxaca","Oax.","141","San Francisco del Mar","0036","San Francisco del Mar","8710","4374","4336","2459" -"20","20","Oaxaca","Oax.","142","San Francisco Huehuetlán","0001","San Francisco Huehuetlán","842","378","464","284" -"20","20","Oaxaca","Oax.","143","San Francisco Ixhuatán","0001","San Francisco Ixhuatán","9461","4766","4695","3035" -"20","20","Oaxaca","Oax.","144","San Francisco Jaltepetongo","0001","San Francisco Jaltepetongo","1075","514","561","352" -"20","20","Oaxaca","Oax.","145","San Francisco Lachigoló","0001","San Francisco Lachigoló","5215","2502","2713","1495" -"20","20","Oaxaca","Oax.","146","San Francisco Logueche","0001","San Francisco Logueche","2803","1324","1479","668" -"20","20","Oaxaca","Oax.","147","San Francisco Nuxaño","0001","San Francisco Nuxaño","376","193","183","121" -"20","20","Oaxaca","Oax.","148","San Francisco Ozolotepec","0001","San Francisco Ozolotepec","2182","1040","1142","502" -"20","20","Oaxaca","Oax.","149","San Francisco Sola","0001","San Francisco Sola","2019","947","1072","519" -"20","20","Oaxaca","Oax.","150","San Francisco Telixtlahuaca","0001","San Francisco Telixtlahuaca","13856","6674","7182","3394" -"20","20","Oaxaca","Oax.","151","San Francisco Teopan","0001","San Francisco Teopan","312","161","151","101" -"20","20","Oaxaca","Oax.","152","San Francisco Tlapancingo","0001","San Francisco Tlapancingo","2472","1144","1328","520" -"20","20","Oaxaca","Oax.","153","San Gabriel Mixtepec","0001","San Gabriel Mixtepec","4910","2395","2515","1276" -"20","20","Oaxaca","Oax.","154","San Ildefonso Amatlán","0001","San Ildefonso Amatlán","2329","1079","1250","672" -"20","20","Oaxaca","Oax.","155","San Ildefonso Sola","0001","San Ildefonso Sola","1060","513","547","260" -"20","20","Oaxaca","Oax.","156","San Ildefonso Villa Alta","0001","San Ildefonso Villa Alta","3677","1779","1898","1100" -"20","20","Oaxaca","Oax.","157","San Jacinto Amilpas","0001","San Jacinto Amilpas","16827","7989","8838","4787" -"20","20","Oaxaca","Oax.","158","San Jacinto Tlacotepec","0001","San Jacinto Tlacotepec","2233","1075","1158","598" -"20","20","Oaxaca","Oax.","159","San Jerónimo Coatlán","0001","San Jerónimo Coatlán","5537","2701","2836","1264" -"20","20","Oaxaca","Oax.","160","San Jerónimo Silacayoapilla","0001","San Jerónimo Silacayoapilla","1429","699","730","451" -"20","20","Oaxaca","Oax.","161","San Jerónimo Sosola","0001","San Jerónimo Sosola","2730","1305","1425","813" -"20","20","Oaxaca","Oax.","162","San Jerónimo Taviche","0001","San Jerónimo Taviche","2046","987","1059","491" -"20","20","Oaxaca","Oax.","163","San Jerónimo Tecóatl","0001","San Jerónimo Tecóatl","1577","732","845","455" -"20","20","Oaxaca","Oax.","164","San Jorge Nuchita","0001","San Jorge Nuchita","2881","1341","1540","777" -"20","20","Oaxaca","Oax.","165","San José Ayuquila","0001","San José Ayuquila","1629","765","864","458" -"20","20","Oaxaca","Oax.","166","San José Chiltepec","0001","San José Chiltepec","11310","5461","5849","3100" -"20","20","Oaxaca","Oax.","167","San José del Peñasco","0001","San José del Peñasco","2149","1022","1127","563" -"20","20","Oaxaca","Oax.","168","San José Estancia Grande","0001","San José Estancia Grande","938","457","481","274" -"20","20","Oaxaca","Oax.","169","San José Independencia","0001","San José Independencia","4251","2053","2198","1170" -"20","20","Oaxaca","Oax.","170","San José Lachiguiri","0001","San José Lachiguiri","3700","1752","1948","894" -"20","20","Oaxaca","Oax.","171","San José Tenango","0001","San José Tenango","18102","8566","9536","4847" -"20","20","Oaxaca","Oax.","172","San Juan Achiutla","0001","San Juan Achiutla","408","203","205","145" -"20","20","Oaxaca","Oax.","173","San Juan Atepec","0001","San Juan Atepec","1457","705","752","481" -"20","20","Oaxaca","Oax.","174","Ánimas Trujano","0001","Ánimas Trujano","4564","2170","2394","1223" -"20","20","Oaxaca","Oax.","175","San Juan Bautista Atatlahuca","0001","San Juan Bautista Atatlahuca","1424","680","744","395" -"20","20","Oaxaca","Oax.","176","San Juan Bautista Coixtlahuaca","0001","San Juan Bautista Coixtlahuaca","2725","1314","1411","837" -"20","20","Oaxaca","Oax.","177","San Juan Bautista Cuicatlán","0001","San Juan Bautista Cuicatlán","10365","5141","5224","3132" -"20","20","Oaxaca","Oax.","178","San Juan Bautista Guelache","0001","San Juan Bautista Guelache","6692","3167","3525","1787" -"20","20","Oaxaca","Oax.","179","San Juan Bautista Jayacatlán","0001","San Juan Bautista Jayacatlán","1447","703","744","409" -"20","20","Oaxaca","Oax.","180","San Juan Bautista Lo de Soto","0001","San Juan Bautista Lo de Soto","2344","1177","1167","751" -"20","20","Oaxaca","Oax.","181","San Juan Bautista Suchitepec","0001","San Juan Bautista Suchitepec","453","222","231","161" -"20","20","Oaxaca","Oax.","182","San Juan Bautista Tlacoatzintepec","0001","San Juan Bautista Tlacoatzintepec","2181","1006","1175","547" -"20","20","Oaxaca","Oax.","183","San Juan Bautista Tlachichilco","0001","San Juan Bautista Tlachichilco","1475","689","786","374" -"20","20","Oaxaca","Oax.","184","San Juan Bautista Tuxtepec","0001","San Juan Bautista Tuxtepec","159452","75967","83485","47234" -"20","20","Oaxaca","Oax.","185","San Juan Cacahuatepec","0001","San Juan Cacahuatepec","8939","4297","4642","2389" -"20","20","Oaxaca","Oax.","186","San Juan Cieneguilla","0001","San Juan Cieneguilla","524","271","253","172" -"20","20","Oaxaca","Oax.","187","San Juan Coatzóspam","0001","San Juan Coatzóspam","1808","874","934","525" -"20","20","Oaxaca","Oax.","188","San Juan Colorado","0001","San Juan Colorado","9609","4668","4941","2583" -"20","20","Oaxaca","Oax.","189","San Juan Comaltepec","0001","San Juan Comaltepec","3116","1523","1593","697" -"20","20","Oaxaca","Oax.","190","San Juan Cotzocón","0001","San Juan Cotzocón","22444","10843","11601","6172" -"20","20","Oaxaca","Oax.","191","San Juan Chicomezúchil","0001","San Juan Chicomezúchil","296","133","163","92" -"20","20","Oaxaca","Oax.","192","San Juan Chilateca","0001","San Juan Chilateca","1522","697","825","451" -"20","20","Oaxaca","Oax.","193","San Juan del Estado","0001","San Juan del Estado","2807","1342","1465","731" -"20","20","Oaxaca","Oax.","194","San Juan del Río","0001","San Juan del Río","1372","651","721","443" -"20","20","Oaxaca","Oax.","195","San Juan Diuxi","0001","San Juan Diuxi","1056","497","559","391" -"20","20","Oaxaca","Oax.","196","San Juan Evangelista Analco","0001","San Juan Evangelista Analco","407","192","215","135" -"20","20","Oaxaca","Oax.","197","San Juan Guelavía","0001","San Juan Guelavía","3288","1617","1671","987" -"20","20","Oaxaca","Oax.","198","San Juan Guichicovi","0001","San Juan Guichicovi","29802","13961","15841","9094" -"20","20","Oaxaca","Oax.","199","San Juan Ihualtepec","0001","San Juan Ihualtepec","494","226","268","144" -"20","20","Oaxaca","Oax.","200","San Juan Juquila Mixes","0001","San Juan Juquila Mixes","3703","1764","1939","1076" -"20","20","Oaxaca","Oax.","201","San Juan Juquila Vijanos","0001","San Juan Juquila Vijanos","1880","884","996","562" -"20","20","Oaxaca","Oax.","202","San Juan Lachao","0001","San Juan Lachao","4577","2195","2382","1092" -"20","20","Oaxaca","Oax.","203","San Juan Lachigalla","0001","San Juan Lachigalla","3538","1740","1798","831" -"20","20","Oaxaca","Oax.","204","San Juan Lajarcia","0001","San Juan Lajarcia","634","292","342","219" -"20","20","Oaxaca","Oax.","205","San Juan Lalana","0001","San Juan Lalana","16989","8244","8745","4497" -"20","20","Oaxaca","Oax.","206","San Juan de los Cués","0001","San Juan de los Cués","2421","1184","1237","722" -"20","20","Oaxaca","Oax.","207","San Juan Mazatlán","0001","San Juan Mazatlán","19032","9367","9665","5038" -"20","20","Oaxaca","Oax.","208","San Juan Mixtepec","0001","San Juan Mixtepec Distrito 08","6941","3309","3632","2340" -"20","20","Oaxaca","Oax.","209","San Juan Mixtepec","0001","San Juan Mixtepec Distrito 26","607","245","362","200" -"20","20","Oaxaca","Oax.","210","San Juan Ñumí","0001","San Juan Ñumí","5773","2618","3155","1679" -"20","20","Oaxaca","Oax.","211","San Juan Ozolotepec","0001","San Juan Ozolotepec","3411","1708","1703","763" -"20","20","Oaxaca","Oax.","212","San Juan Petlapa","0001","San Juan Petlapa","3117","1484","1633","836" -"20","20","Oaxaca","Oax.","213","San Juan Quiahije","0001","San Juan Quiahije","4203","1912","2291","890" -"20","20","Oaxaca","Oax.","214","San Juan Quiotepec","0001","San Juan Quiotepec","2033","1007","1026","547" -"20","20","Oaxaca","Oax.","215","San Juan Sayultepec","0001","San Juan Sayultepec","879","404","475","237" -"20","20","Oaxaca","Oax.","216","San Juan Tabaá","0001","San Juan Tabaá","1241","595","646","332" -"20","20","Oaxaca","Oax.","217","San Juan Tamazola","0001","San Juan Tamazola","3325","1616","1709","942" -"20","20","Oaxaca","Oax.","218","San Juan Teita","0001","San Juan Teita","544","260","284","166" -"20","20","Oaxaca","Oax.","219","San Juan Teitipac","0001","San Juan Teitipac","2668","1276","1392","755" -"20","20","Oaxaca","Oax.","220","San Juan Tepeuxila","0001","San Juan Tepeuxila","2692","1388","1304","835" -"20","20","Oaxaca","Oax.","221","San Juan Teposcolula","0001","San Juan Teposcolula","1494","723","771","431" -"20","20","Oaxaca","Oax.","222","San Juan Yaeé","0001","San Juan Yaeé","1426","687","739","459" -"20","20","Oaxaca","Oax.","223","San Juan Yatzona","0001","San Juan Yatzona","440","197","243","133" -"20","20","Oaxaca","Oax.","224","San Juan Yucuita","0001","San Juan Yucuita","643","305","338","192" -"20","20","Oaxaca","Oax.","225","San Lorenzo","0001","San Lorenzo","5903","2802","3101","1644" -"20","20","Oaxaca","Oax.","226","San Lorenzo Albarradas","0001","San Lorenzo Albarradas","2971","1505","1466","845" -"20","20","Oaxaca","Oax.","227","San Lorenzo Cacaotepec","0001","San Lorenzo Cacaotepec","18339","8859","9480","4983" -"20","20","Oaxaca","Oax.","228","San Lorenzo Cuaunecuiltitla","0001","San Lorenzo Cuaunecuiltitla","833","431","402","201" -"20","20","Oaxaca","Oax.","229","San Lorenzo Texmelúcan","0001","San Lorenzo Texmelúcan","9148","4117","5031","1648" -"20","20","Oaxaca","Oax.","230","San Lorenzo Victoria","0001","San Lorenzo Victoria","932","478","454","287" -"20","20","Oaxaca","Oax.","231","San Lucas Camotlán","0001","San Lucas Camotlán","3187","1539","1648","802" -"20","20","Oaxaca","Oax.","232","San Lucas Ojitlán","0001","San Lucas Ojitlán","22185","10616","11569","5408" -"20","20","Oaxaca","Oax.","233","San Lucas Quiaviní","0001","San Lucas Quiaviní","1720","728","992","444" -"20","20","Oaxaca","Oax.","234","San Lucas Zoquiápam","0001","San Lucas Zoquiápam","7163","3443","3720","1965" -"20","20","Oaxaca","Oax.","235","San Luis Amatlán","0001","San Luis Amatlán","3829","1793","2036","1093" -"20","20","Oaxaca","Oax.","236","San Marcial Ozolotepec","0001","San Marcial Ozolotepec","1372","630","742","342" -"20","20","Oaxaca","Oax.","237","San Marcos Arteaga","0001","San Marcos Arteaga","1568","734","834","449" -"20","20","Oaxaca","Oax.","238","San Martín de los Cansecos","0001","San Martín de los Cansecos","994","472","522","252" -"20","20","Oaxaca","Oax.","239","San Martín Huamelúlpam","0001","San Martín Huamelúlpam","1000","468","532","344" -"20","20","Oaxaca","Oax.","240","San Martín Itunyoso","0001","San Martín Itunyoso","2749","1251","1498","612" -"20","20","Oaxaca","Oax.","241","San Martín Lachilá","0001","San Martín Lachilá","1034","465","569","323" -"20","20","Oaxaca","Oax.","242","San Martín Peras","0001","San Martín Peras","12436","5854","6582","2317" -"20","20","Oaxaca","Oax.","243","San Martín Tilcajete","0001","San Martín Tilcajete","1975","922","1053","476" -"20","20","Oaxaca","Oax.","244","San Martín Toxpalan","0001","San Martín Toxpalan","3934","1891","2043","1051" -"20","20","Oaxaca","Oax.","245","San Martín Zacatepec","0001","San Martín Zacatepec","1324","664","660","361" -"20","20","Oaxaca","Oax.","246","San Mateo Cajonos","0001","San Mateo Cajonos","611","297","314","180" -"20","20","Oaxaca","Oax.","247","Capulálpam de Méndez","0001","Capulálpam de Méndez","1619","723","896","420" -"20","20","Oaxaca","Oax.","248","San Mateo del Mar","0001","San Mateo del Mar","15571","7791","7780","3898" -"20","20","Oaxaca","Oax.","249","San Mateo Yoloxochitlán","0001","San Mateo Yoloxochitlán","3831","1805","2026","977" -"20","20","Oaxaca","Oax.","250","San Mateo Etlatongo","0001","San Mateo Etlatongo","1239","606","633","381" -"20","20","Oaxaca","Oax.","251","San Mateo Nejápam","0001","San Mateo Nejápam","1217","564","653","302" -"20","20","Oaxaca","Oax.","252","San Mateo Peñasco","0001","San Mateo Peñasco","2384","1120","1264","616" -"20","20","Oaxaca","Oax.","253","San Mateo Piñas","0001","San Mateo Piñas","2021","1026","995","641" -"20","20","Oaxaca","Oax.","254","San Mateo Río Hondo","0001","San Mateo Río Hondo","3207","1571","1636","845" -"20","20","Oaxaca","Oax.","255","San Mateo Sindihui","0001","San Mateo Sindihui","1977","932","1045","504" -"20","20","Oaxaca","Oax.","256","San Mateo Tlapiltepec","0001","San Mateo Tlapiltepec","229","111","118","68" -"20","20","Oaxaca","Oax.","257","San Melchor Betaza","0001","San Melchor Betaza","1052","504","548","330" -"20","20","Oaxaca","Oax.","258","San Miguel Achiutla","0001","San Miguel Achiutla","698","350","348","251" -"20","20","Oaxaca","Oax.","259","San Miguel Ahuehuetitlán","0001","San Miguel Ahuehuetitlán","2142","1033","1109","527" -"20","20","Oaxaca","Oax.","260","San Miguel Aloápam","0001","San Miguel Aloápam","2191","998","1193","572" -"20","20","Oaxaca","Oax.","261","San Miguel Amatitlán","0001","San Miguel Amatitlán","6932","3343","3589","1583" -"20","20","Oaxaca","Oax.","262","San Miguel Amatlán","0001","San Miguel Amatlán","991","473","518","291" -"20","20","Oaxaca","Oax.","263","San Miguel Coatlán","0001","San Miguel Coatlán","3184","1459","1725","864" -"20","20","Oaxaca","Oax.","264","San Miguel Chicahua","0001","San Miguel Chicahua","2169","971","1198","631" -"20","20","Oaxaca","Oax.","265","San Miguel Chimalapa","0001","San Miguel Chimalapa","6711","3415","3296","2023" -"20","20","Oaxaca","Oax.","266","San Miguel del Puerto","0001","San Miguel del Puerto","8551","4268","4283","2380" -"20","20","Oaxaca","Oax.","267","San Miguel del Río","0001","San Miguel del Río","245","122","123","76" -"20","20","Oaxaca","Oax.","268","San Miguel Ejutla","0001","San Miguel Ejutla","1149","536","613","307" -"20","20","Oaxaca","Oax.","269","San Miguel el Grande","0001","San Miguel el Grande","4313","2008","2305","1320" -"20","20","Oaxaca","Oax.","270","San Miguel Huautla","0001","San Miguel Huautla","1311","615","696","390" -"20","20","Oaxaca","Oax.","271","San Miguel Mixtepec","0001","San Miguel Mixtepec","3194","1582","1612","624" -"20","20","Oaxaca","Oax.","272","San Miguel Panixtlahuaca","0001","San Miguel Panixtlahuaca","6252","2758","3494","1229" -"20","20","Oaxaca","Oax.","273","San Miguel Peras","0001","San Miguel Peras","3818","1822","1996","876" -"20","20","Oaxaca","Oax.","274","San Miguel Piedras","0001","San Miguel Piedras","1328","636","692","352" -"20","20","Oaxaca","Oax.","275","San Miguel Quetzaltepec","0001","San Miguel Quetzaltepec","7286","3530","3756","2053" -"20","20","Oaxaca","Oax.","276","San Miguel Santa Flor","0001","San Miguel Santa Flor","691","361","330","219" -"20","20","Oaxaca","Oax.","277","Villa Sola de Vega","0001","Villa Sola de Vega","12350","5955","6395","3221" -"20","20","Oaxaca","Oax.","278","San Miguel Soyaltepec","0001","Temascal","38682","18612","20070","10427" -"20","20","Oaxaca","Oax.","279","San Miguel Suchixtepec","0001","San Miguel Suchixtepec","2932","1401","1531","666" -"20","20","Oaxaca","Oax.","280","Villa Talea de Castro","0001","Villa Talea de Castro","2011","945","1066","709" -"20","20","Oaxaca","Oax.","281","San Miguel Tecomatlán","0001","San Miguel Tecomatlán","305","152","153","117" -"20","20","Oaxaca","Oax.","282","San Miguel Tenango","0001","San Miguel Tenango","653","334","319","226" -"20","20","Oaxaca","Oax.","283","San Miguel Tequixtepec","0001","San Miguel Tequixtepec","1044","496","548","318" -"20","20","Oaxaca","Oax.","284","San Miguel Tilquiápam","0001","San Miguel Tilquiápam","3141","1415","1726","689" -"20","20","Oaxaca","Oax.","285","San Miguel Tlacamama","0001","San Miguel Tlacamama","3668","1786","1882","1020" -"20","20","Oaxaca","Oax.","286","San Miguel Tlacotepec","0001","San Miguel Tlacotepec","3100","1432","1668","913" -"20","20","Oaxaca","Oax.","287","San Miguel Tulancingo","0001","San Miguel Tulancingo","307","134","173","103" -"20","20","Oaxaca","Oax.","288","San Miguel Yotao","0001","San Miguel Yotao","585","272","313","179" -"20","20","Oaxaca","Oax.","289","San Nicolás","0001","San Nicolás","1214","580","634","374" -"20","20","Oaxaca","Oax.","290","San Nicolás Hidalgo","0001","San Nicolás Hidalgo","1043","499","544","269" -"20","20","Oaxaca","Oax.","291","San Pablo Coatlán","0001","San Pablo Coatlán","4308","2107","2201","1102" -"20","20","Oaxaca","Oax.","292","San Pablo Cuatro Venados","0001","San Pablo Cuatro Venados","1510","718","792","346" -"20","20","Oaxaca","Oax.","293","San Pablo Etla","0001","San Pablo Etla","17116","8033","9083","5054" -"20","20","Oaxaca","Oax.","294","San Pablo Huitzo","0001","San Pablo Huitzo","7035","3318","3717","1903" -"20","20","Oaxaca","Oax.","295","San Pablo Huixtepec","0001","San Pablo Huixtepec","10020","4721","5299","2688" -"20","20","Oaxaca","Oax.","296","San Pablo Macuiltianguis","0001","San Pablo Macuiltianguis","955","478","477","307" -"20","20","Oaxaca","Oax.","297","San Pablo Tijaltepec","0001","San Pablo Tijaltepec","2751","1277","1474","610" -"20","20","Oaxaca","Oax.","298","San Pablo Villa de Mitla","0001","San Pablo Villa de Mitla","13587","6526","7061","3619" -"20","20","Oaxaca","Oax.","299","San Pablo Yaganiza","0001","San Pablo Yaganiza","1125","543","582","323" -"20","20","Oaxaca","Oax.","300","San Pedro Amuzgos","0001","San Pedro Amuzgos","6632","3080","3552","1888" -"20","20","Oaxaca","Oax.","301","San Pedro Apóstol","0001","San Pedro Apóstol","1594","747","847","454" -"20","20","Oaxaca","Oax.","302","San Pedro Atoyac","0001","San Pedro Atoyac","4559","2113","2446","1119" -"20","20","Oaxaca","Oax.","303","San Pedro Cajonos","0001","San Pedro Cajonos","1081","495","586","361" -"20","20","Oaxaca","Oax.","304","San Pedro Coxcaltepec Cántaros","0001","San Pedro Coxcaltepec Cántaros","716","334","382","231" -"20","20","Oaxaca","Oax.","305","San Pedro Comitancillo","0001","San Pedro Comitancillo","4333","2065","2268","1434" -"20","20","Oaxaca","Oax.","306","San Pedro el Alto","0001","San Pedro el Alto","4654","2256","2398","999" -"20","20","Oaxaca","Oax.","307","San Pedro Huamelula","0001","San Pedro Huamelula","9735","4802","4933","3105" -"20","20","Oaxaca","Oax.","308","San Pedro Huilotepec","0001","San Pedro Huilotepec","3307","1623","1684","869" -"20","20","Oaxaca","Oax.","309","San Pedro Ixcatlán","0001","San Pedro Ixcatlán","10368","4976","5392","2865" -"20","20","Oaxaca","Oax.","310","San Pedro Ixtlahuaca","0001","San Pedro Ixtlahuaca","14552","7118","7434","3706" -"20","20","Oaxaca","Oax.","311","San Pedro Jaltepetongo","0001","San Pedro Jaltepetongo","483","231","252","161" -"20","20","Oaxaca","Oax.","312","San Pedro Jicayán","0001","San Pedro Jicayán","11279","5272","6007","2691" -"20","20","Oaxaca","Oax.","313","San Pedro Jocotipac","0001","San Pedro Jocotipac","730","341","389","270" -"20","20","Oaxaca","Oax.","314","San Pedro Juchatengo","0001","San Pedro Juchatengo","1755","842","913","493" -"20","20","Oaxaca","Oax.","315","San Pedro Mártir","0001","San Pedro Mártir","1899","867","1032","491" -"20","20","Oaxaca","Oax.","316","San Pedro Mártir Quiechapa","0001","San Pedro Mártir Quiechapa","738","346","392","219" -"20","20","Oaxaca","Oax.","317","San Pedro Mártir Yucuxaco","0001","San Pedro Mártir Yucuxaco","1257","599","658","431" -"20","20","Oaxaca","Oax.","318","San Pedro Mixtepec","0001","San Pedro Mixtepec Distrito 22","49780","24008","25772","13918" -"20","20","Oaxaca","Oax.","319","San Pedro Mixtepec","0001","San Pedro Mixtepec Distrito 26","972","468","504","321" -"20","20","Oaxaca","Oax.","320","San Pedro Molinos","0001","San Pedro Molinos","706","339","367","226" -"20","20","Oaxaca","Oax.","321","San Pedro Nopala","0001","San Pedro Nopala","751","358","393","201" -"20","20","Oaxaca","Oax.","322","San Pedro Ocopetatillo","0001","San Pedro Ocopetatillo","786","348","438","245" -"20","20","Oaxaca","Oax.","323","San Pedro Ocotepec","0001","San Pedro Ocotepec","2404","1196","1208","556" -"20","20","Oaxaca","Oax.","324","San Pedro Pochutla","0001","San Pedro Pochutla","48204","23519","24685","12727" -"20","20","Oaxaca","Oax.","325","San Pedro Quiatoni","0001","San Pedro Quiatoni","11930","5781","6149","3137" -"20","20","Oaxaca","Oax.","326","San Pedro Sochiápam","0001","San Pedro Sochiápam","5052","2438","2614","1211" -"20","20","Oaxaca","Oax.","327","San Pedro Tapanatepec","0001","San Pedro Tapanatepec","15479","7614","7865","4561" -"20","20","Oaxaca","Oax.","328","San Pedro Taviche","0001","San Pedro Taviche","1441","691","750","359" -"20","20","Oaxaca","Oax.","329","San Pedro Teozacoalco","0001","San Pedro Teozacoalco","1153","575","578","350" -"20","20","Oaxaca","Oax.","330","San Pedro Teutila","0001","San Pedro Teutila","4296","2100","2196","1172" -"20","20","Oaxaca","Oax.","331","San Pedro Tidaá","0001","San Pedro Tidaá","982","451","531","332" -"20","20","Oaxaca","Oax.","332","San Pedro Topiltepec","0001","San Pedro Topiltepec","373","183","190","131" -"20","20","Oaxaca","Oax.","333","San Pedro Totolápam","0001","San Pedro Totolápam","3294","1637","1657","947" -"20","20","Oaxaca","Oax.","334","Villa de Tututepec","0001","Villa de Tututepec","50541","24533","26008","14836" -"20","20","Oaxaca","Oax.","335","San Pedro Yaneri","0001","San Pedro Yaneri","867","418","449","252" -"20","20","Oaxaca","Oax.","336","San Pedro Yólox","0001","San Pedro Yólox","1697","819","878","493" -"20","20","Oaxaca","Oax.","337","San Pedro y San Pablo Ayutla","0001","San Pedro y San Pablo Ayutla","5616","2533","3083","1610" -"20","20","Oaxaca","Oax.","338","Villa de Etla","0001","Villa de Etla","10361","4992","5369","2690" -"20","20","Oaxaca","Oax.","339","San Pedro y San Pablo Teposcolula","0001","San Pedro y San Pablo Teposcolula","4353","2054","2299","1227" -"20","20","Oaxaca","Oax.","340","San Pedro y San Pablo Tequixtepec","0001","San Pedro y San Pablo Tequixtepec","1747","800","947","625" -"20","20","Oaxaca","Oax.","341","San Pedro Yucunama","0001","San Pedro Yucunama","241","109","132","73" -"20","20","Oaxaca","Oax.","342","San Raymundo Jalpan","0001","San Raymundo Jalpan","4105","1919","2186","1291" -"20","20","Oaxaca","Oax.","343","San Sebastián Abasolo","0001","San Sebastián Abasolo","1999","948","1051","568" -"20","20","Oaxaca","Oax.","344","San Sebastián Coatlán","0001","San Sebastián Coatlán","2809","1359","1450","808" -"20","20","Oaxaca","Oax.","345","San Sebastián Ixcapa","0001","San Sebastián Ixcapa","4188","2034","2154","1215" -"20","20","Oaxaca","Oax.","346","San Sebastián Nicananduta","0001","San Sebastián Nicananduta","1542","704","838","483" -"20","20","Oaxaca","Oax.","347","San Sebastián Río Hondo","0001","San Sebastián Río Hondo","4202","2100","2102","1014" -"20","20","Oaxaca","Oax.","348","San Sebastián Tecomaxtlahuaca","0001","San Sebastián Tecomaxtlahuaca","8192","3909","4283","2298" -"20","20","Oaxaca","Oax.","349","San Sebastián Teitipac","0001","San Sebastián Teitipac","2189","1007","1182","638" -"20","20","Oaxaca","Oax.","350","San Sebastián Tutla","0001","San Sebastián Tutla","16878","7706","9172","5032" -"20","20","Oaxaca","Oax.","351","San Simón Almolongas","0001","San Simón Almolongas","2802","1333","1469","839" -"20","20","Oaxaca","Oax.","352","San Simón Zahuatlán","0001","San Simón Zahuatlán","4940","2469","2471","596" -"20","20","Oaxaca","Oax.","353","Santa Ana","0001","Santa Ana","2406","1188","1218","621" -"20","20","Oaxaca","Oax.","354","Santa Ana Ateixtlahuaca","0001","Santa Ana Ateixtlahuaca","477","238","239","142" -"20","20","Oaxaca","Oax.","355","Santa Ana Cuauhtémoc","0001","Santa Ana Cuauhtémoc","681","342","339","233" -"20","20","Oaxaca","Oax.","356","Santa Ana del Valle","0001","Santa Ana del Valle","2179","1076","1103","602" -"20","20","Oaxaca","Oax.","357","Santa Ana Tavela","0001","Santa Ana Tavela","848","409","439","269" -"20","20","Oaxaca","Oax.","358","Santa Ana Tlapacoyan","0001","Santa Ana Tlapacoyan","1958","925","1033","615" -"20","20","Oaxaca","Oax.","359","Santa Ana Yareni","0001","Santa Ana Yareni","637","281","356","234" -"20","20","Oaxaca","Oax.","360","Santa Ana Zegache","0001","Santa Ana Zegache","3981","1863","2118","1171" -"20","20","Oaxaca","Oax.","361","Santa Catalina Quierí","0001","Santa Catalina Quierí","825","366","459","252" -"20","20","Oaxaca","Oax.","362","Santa Catarina Cuixtla","0001","Santa Catarina Cuixtla","1495","675","820","435" -"20","20","Oaxaca","Oax.","363","Santa Catarina Ixtepeji","0001","Santa Catarina Ixtepeji","2675","1262","1413","772" -"20","20","Oaxaca","Oax.","364","Santa Catarina Juquila","0001","Santa Catarina Juquila","18654","8981","9673","4274" -"20","20","Oaxaca","Oax.","365","Santa Catarina Lachatao","0001","Santa Catarina Lachatao","1059","485","574","373" -"20","20","Oaxaca","Oax.","366","Santa Catarina Loxicha","0001","Santa Catarina Loxicha","3676","1729","1947","898" -"20","20","Oaxaca","Oax.","367","Santa Catarina Mechoacán","0001","Santa Catarina Mechoacán","4582","2238","2344","1149" -"20","20","Oaxaca","Oax.","368","Santa Catarina Minas","0001","Santa Catarina Minas","2067","1028","1039","551" -"20","20","Oaxaca","Oax.","369","Santa Catarina Quiané","0001","Santa Catarina Quiané","2193","1069","1124","657" -"20","20","Oaxaca","Oax.","370","Santa Catarina Tayata","0001","Santa Catarina Tayata","662","316","346","208" -"20","20","Oaxaca","Oax.","371","Santa Catarina Ticuá","0001","Santa Catarina Ticuá","986","428","558","352" -"20","20","Oaxaca","Oax.","372","Santa Catarina Yosonotú","0001","Santa Catarina Yosonotú","1316","591","725","458" -"20","20","Oaxaca","Oax.","373","Santa Catarina Zapoquila","0001","Santa Catarina Zapoquila","403","201","202","127" -"20","20","Oaxaca","Oax.","374","Santa Cruz Acatepec","0001","Santa Cruz Acatepec","1645","773","872","422" -"20","20","Oaxaca","Oax.","375","Santa Cruz Amilpas","0001","Santa Cruz Amilpas","13200","6190","7010","3575" -"20","20","Oaxaca","Oax.","376","Santa Cruz de Bravo","0001","Santa Cruz de Bravo","365","170","195","100" -"20","20","Oaxaca","Oax.","377","Santa Cruz Itundujia","0001","Santa Cruz Itundujia","10860","5180","5680","2995" -"20","20","Oaxaca","Oax.","378","Santa Cruz Mixtepec","0001","Santa Cruz Mixtepec","3720","1792","1928","969" -"20","20","Oaxaca","Oax.","379","Santa Cruz Nundaco","0001","Santa Cruz Nundaco","2951","1327","1624","784" -"20","20","Oaxaca","Oax.","380","Santa Cruz Papalutla","0001","Santa Cruz Papalutla","2242","1094","1148","645" -"20","20","Oaxaca","Oax.","381","Santa Cruz Tacache de Mina","0001","Santa Cruz Tacache de Mina","2940","1388","1552","791" -"20","20","Oaxaca","Oax.","382","Santa Cruz Tacahua","0001","Santa Cruz Tacahua","1182","561","621","352" -"20","20","Oaxaca","Oax.","383","Santa Cruz Tayata","0001","Santa Cruz Tayata","595","293","302","177" -"20","20","Oaxaca","Oax.","384","Santa Cruz Xitla","0001","Santa Cruz Xitla","4794","2281","2513","1137" -"20","20","Oaxaca","Oax.","385","Santa Cruz Xoxocotlán","0001","Santa Cruz Xoxocotlán","100402","47016","53386","27498" -"20","20","Oaxaca","Oax.","386","Santa Cruz Zenzontepec","0001","Santa Cruz Zenzontepec","19079","9243","9836","4470" -"20","20","Oaxaca","Oax.","387","Santa Gertrudis","0001","Santa Gertrudis","2891","1386","1505","838" -"20","20","Oaxaca","Oax.","388","Santa Inés del Monte","0001","Santa Inés del Monte","2809","1390","1419","643" -"20","20","Oaxaca","Oax.","389","Santa Inés Yatzeche","0001","Santa Inés Yatzeche","908","422","486","231" -"20","20","Oaxaca","Oax.","390","Santa Lucía del Camino","0001","Santa Lucía del Camino","50362","24171","26191","14259" -"20","20","Oaxaca","Oax.","391","Santa Lucía Miahuatlán","0001","Santa Lucía Miahuatlán","3375","1647","1728","822" -"20","20","Oaxaca","Oax.","392","Santa Lucía Monteverde","0001","Santa Lucía Monteverde","6726","3232","3494","1884" -"20","20","Oaxaca","Oax.","393","Santa Lucía Ocotlán","0001","Santa Lucía Ocotlán","4173","1971","2202","1027" -"20","20","Oaxaca","Oax.","394","Santa María Alotepec","0001","Santa María Alotepec","2796","1353","1443","809" -"20","20","Oaxaca","Oax.","395","Santa María Apazco","0001","Santa María Apazco","1629","740","889","506" -"20","20","Oaxaca","Oax.","396","Santa María la Asunción","0001","Santa María la Asunción","3259","1432","1827","943" -"20","20","Oaxaca","Oax.","397","Heroica Ciudad de Tlaxiaco","0001","Heroica Ciudad de Tlaxiaco","40123","18602","21521","10596" -"20","20","Oaxaca","Oax.","398","Ayoquezco de Aldama","0001","Ayoquezco de Aldama","4874","2360","2514","1381" -"20","20","Oaxaca","Oax.","399","Santa María Atzompa","0001","Santa María Atzompa","41921","19948","21973","11367" -"20","20","Oaxaca","Oax.","400","Santa María Camotlán","0001","Santa María Camotlán","1713","821","892","530" -"20","20","Oaxaca","Oax.","401","Santa María Colotepec","0001","Santa María Colotepec","27046","13241","13805","7079" -"20","20","Oaxaca","Oax.","402","Santa María Cortijo","0001","Santa María Cortijo","1067","518","549","326" -"20","20","Oaxaca","Oax.","403","Santa María Coyotepec","0001","Santa María Coyotepec","3751","1768","1983","1079" -"20","20","Oaxaca","Oax.","404","Santa María Chachoápam","0001","Santa María Chachoápam","761","367","394","247" -"20","20","Oaxaca","Oax.","405","Villa de Chilapa de Díaz","0001","Villa de Chilapa de Díaz","1815","829","986","559" -"20","20","Oaxaca","Oax.","406","Santa María Chilchotla","0001","Santa María Chilchotla","21469","10373","11096","5621" -"20","20","Oaxaca","Oax.","407","Santa María Chimalapa","0001","Santa María Chimalapa","9578","4790","4788","2642" -"20","20","Oaxaca","Oax.","408","Santa María del Rosario","0001","Santa María del Rosario","499","246","253","144" -"20","20","Oaxaca","Oax.","409","Santa María del Tule","0001","Santa María del Tule","8939","4139","4800","2574" -"20","20","Oaxaca","Oax.","410","Santa María Ecatepec","0001","Santa María Ecatepec","3418","1734","1684","894" -"20","20","Oaxaca","Oax.","411","Santa María Guelacé","0001","Santa María Guelacé","908","429","479","251" -"20","20","Oaxaca","Oax.","412","Santa María Guienagati","0001","Santa María Guienagati","3178","1554","1624","901" -"20","20","Oaxaca","Oax.","413","Santa María Huatulco","0001","Santa María Huatulco","50862","24854","26008","15176" -"20","20","Oaxaca","Oax.","414","Santa María Huazolotitlán","0001","Santa María Huazolotitlán","11995","5890","6105","3582" -"20","20","Oaxaca","Oax.","415","Santa María Ipalapa","0001","Santa María Ipalapa","4878","2302","2576","1292" -"20","20","Oaxaca","Oax.","416","Santa María Ixcatlán","0001","Santa María Ixcatlán","461","224","237","163" -"20","20","Oaxaca","Oax.","417","Santa María Jacatepec","0001","Santa María Jacatepec","9682","4588","5094","2618" -"20","20","Oaxaca","Oax.","418","Santa María Jalapa del Marqués","0001","Santa María Jalapa del Marqués","11735","5660","6075","3604" -"20","20","Oaxaca","Oax.","419","Santa María Jaltianguis","0001","Santa María Jaltianguis","592","278","314","176" -"20","20","Oaxaca","Oax.","420","Santa María Lachixío","0001","Santa María Lachixío","1679","760","919","402" -"20","20","Oaxaca","Oax.","421","Santa María Mixtequilla","0001","Santa María Mixtequilla","4690","2278","2412","1506" -"20","20","Oaxaca","Oax.","422","Santa María Nativitas","0001","Santa María Nativitas","603","276","327","197" -"20","20","Oaxaca","Oax.","423","Santa María Nduayaco","0001","Santa María Nduayaco","453","219","234","146" -"20","20","Oaxaca","Oax.","424","Santa María Ozolotepec","0001","Santa María Ozolotepec","3793","1835","1958","971" -"20","20","Oaxaca","Oax.","425","Santa María Pápalo","0001","Santa María Pápalo","2058","1028","1030","634" -"20","20","Oaxaca","Oax.","426","Santa María Peñoles","0001","Santa María Peñoles","8967","4323","4644","1712" -"20","20","Oaxaca","Oax.","427","Santa María Petapa","0001","Santa María Petapa","16706","8080","8626","4942" -"20","20","Oaxaca","Oax.","428","Santa María Quiegolani","0001","Santa María Quiegolani","2224","1134","1090","531" -"20","20","Oaxaca","Oax.","429","Santa María Sola","0001","Santa María Sola","1516","736","780","439" -"20","20","Oaxaca","Oax.","430","Santa María Tataltepec","0001","Santa María Tataltepec","317","154","163","92" -"20","20","Oaxaca","Oax.","431","Santa María Tecomavaca","0001","Santa María Tecomavaca","1830","891","939","486" -"20","20","Oaxaca","Oax.","432","Santa María Temaxcalapa","0001","Santa María Temaxcalapa","903","443","460","299" -"20","20","Oaxaca","Oax.","433","Santa María Temaxcaltepec","0001","Santa María Temaxcaltepec","2694","1222","1472","622" -"20","20","Oaxaca","Oax.","434","Santa María Teopoxco","0001","Santa María Teopoxco","3985","1790","2195","1126" -"20","20","Oaxaca","Oax.","435","Santa María Tepantlali","0001","Santa María Tepantlali","3576","1737","1839","919" -"20","20","Oaxaca","Oax.","436","Santa María Texcatitlán","0001","Santa María Texcatitlán","896","432","464","293" -"20","20","Oaxaca","Oax.","437","Santa María Tlahuitoltepec","0001","Santa María Tlahuitoltepec","9653","4575","5078","2452" -"20","20","Oaxaca","Oax.","438","Santa María Tlalixtac","0001","Santa María Tlalixtac","1839","924","915","471" -"20","20","Oaxaca","Oax.","439","Santa María Tonameca","0001","Santa María Tonameca","25347","12364","12983","6456" -"20","20","Oaxaca","Oax.","440","Santa María Totolapilla","0001","Santa María Totolapilla","812","396","416","296" -"20","20","Oaxaca","Oax.","441","Santa María Xadani","0001","Santa María Xadani","9234","4560","4674","2237" -"20","20","Oaxaca","Oax.","442","Santa María Yalina","0001","Santa María Yalina","250","112","138","83" -"20","20","Oaxaca","Oax.","443","Santa María Yavesía","0001","Santa María Yavesía","434","199","235","146" -"20","20","Oaxaca","Oax.","444","Santa María Yolotepec","0001","Santa María Yolotepec","481","226","255","155" -"20","20","Oaxaca","Oax.","445","Santa María Yosoyúa","0001","Santa María Yosoyúa","1699","813","886","379" -"20","20","Oaxaca","Oax.","446","Santa María Yucuhiti","0001","Santa María Yucuhiti","6008","2850","3158","1653" -"20","20","Oaxaca","Oax.","447","Santa María Zacatepec","0001","Santa María Zacatepec","17100","8146","8954","4450" -"20","20","Oaxaca","Oax.","448","Santa María Zaniza","0001","Santa María Zaniza","2469","1190","1279","504" -"20","20","Oaxaca","Oax.","449","Santa María Zoquitlán","0001","Santa María Zoquitlán","3294","1630","1664","1031" -"20","20","Oaxaca","Oax.","450","Santiago Amoltepec","0001","Santiago Amoltepec","13855","6785","7070","2994" -"20","20","Oaxaca","Oax.","451","Santiago Apoala","0001","Santiago Apoala","1019","469","550","325" -"20","20","Oaxaca","Oax.","452","Santiago Apóstol","0001","Santiago Apóstol","4421","2006","2415","1155" -"20","20","Oaxaca","Oax.","453","Santiago Astata","0001","Santiago Astata","3918","1948","1970","1282" -"20","20","Oaxaca","Oax.","454","Santiago Atitlán","0001","Santiago Atitlán","3556","1783","1773","885" -"20","20","Oaxaca","Oax.","455","Santiago Ayuquililla","0001","Santiago Ayuquililla","2904","1407","1497","764" -"20","20","Oaxaca","Oax.","456","Santiago Cacaloxtepec","0001","Santiago Cacaloxtepec","1667","802","865","494" -"20","20","Oaxaca","Oax.","457","Santiago Camotlán","0001","Santiago Camotlán","3346","1631","1715","902" -"20","20","Oaxaca","Oax.","458","Santiago Comaltepec","0001","Santiago Comaltepec","1157","540","617","342" -"20","20","Oaxaca","Oax.","459","Villa de Santiago Chazumba","0001","Villa de Santiago Chazumba","4877","2296","2581","1594" -"20","20","Oaxaca","Oax.","460","Santiago Choápam","0001","Santiago Choápam","5242","2491","2751","1393" -"20","20","Oaxaca","Oax.","461","Santiago del Río","0001","Santiago del Río","527","251","276","188" -"20","20","Oaxaca","Oax.","462","Santiago Huajolotitlán","0001","Santiago Huajolotitlán","4600","2213","2387","1256" -"20","20","Oaxaca","Oax.","463","Santiago Huauclilla","0001","Santiago Huauclilla","525","245","280","194" -"20","20","Oaxaca","Oax.","464","Santiago Ihuitlán Plumas","0001","Santiago Ihuitlán Plumas","341","155","186","116" -"20","20","Oaxaca","Oax.","465","Santiago Ixcuintepec","0001","Santiago Ixcuintepec","1636","775","861","413" -"20","20","Oaxaca","Oax.","466","Santiago Ixtayutla","0001","Santiago Ixtayutla","13880","6551","7329","3153" -"20","20","Oaxaca","Oax.","467","Santiago Jamiltepec","0001","Santiago Jamiltepec","19112","9159","9953","5525" -"20","20","Oaxaca","Oax.","468","Santiago Jocotepec","0019","Monte Negro","14198","6863","7335","3378" -"20","20","Oaxaca","Oax.","469","Santiago Juxtlahuaca","0001","Santiago Juxtlahuaca","34735","16527","18208","7595" -"20","20","Oaxaca","Oax.","470","Santiago Lachiguiri","0001","Santiago Lachiguiri","4394","2135","2259","1424" -"20","20","Oaxaca","Oax.","471","Santiago Lalopa","0001","Santiago Lalopa","431","203","228","128" -"20","20","Oaxaca","Oax.","472","Santiago Laollaga","0001","Santiago Laollaga","3361","1629","1732","1118" -"20","20","Oaxaca","Oax.","473","Santiago Laxopa","0001","Santiago Laxopa","1291","595","696","375" -"20","20","Oaxaca","Oax.","474","Santiago Llano Grande","0001","Santiago Llano Grande","3440","1716","1724","1054" -"20","20","Oaxaca","Oax.","475","Santiago Matatlán","0001","Santiago Matatlán","10175","4714","5461","2537" -"20","20","Oaxaca","Oax.","476","Santiago Miltepec","0001","Santiago Miltepec","421","210","211","143" -"20","20","Oaxaca","Oax.","477","Santiago Minas","0001","Santiago Minas","1327","652","675","357" -"20","20","Oaxaca","Oax.","478","Santiago Nacaltepec","0001","Santiago Nacaltepec","1599","735","864","565" -"20","20","Oaxaca","Oax.","479","Santiago Nejapilla","0001","Santiago Nejapilla","174","84","90","68" -"20","20","Oaxaca","Oax.","480","Santiago Nundiche","0001","Santiago Nundiche","1351","644","707","403" -"20","20","Oaxaca","Oax.","481","Santiago Nuyoó","0001","Santiago Nuyoó","1898","910","988","581" -"20","20","Oaxaca","Oax.","482","Santiago Pinotepa Nacional","0001","Santiago Pinotepa Nacional","55840","27214","28626","15557" -"20","20","Oaxaca","Oax.","483","Santiago Suchilquitongo","0001","Santiago Suchilquitongo","10886","5244","5642","2863" -"20","20","Oaxaca","Oax.","484","Santiago Tamazola","0001","Santiago Tamazola","4458","2102","2356","1127" -"20","20","Oaxaca","Oax.","485","Santiago Tapextla","0001","Santiago Tapextla","3134","1582","1552","805" -"20","20","Oaxaca","Oax.","486","Villa Tejúpam de la Unión","0001","Villa Tejúpam de la Unión","2419","1160","1259","695" -"20","20","Oaxaca","Oax.","487","Santiago Tenango","0001","Santiago Tenango","1966","969","997","588" -"20","20","Oaxaca","Oax.","488","Santiago Tepetlapa","0001","Santiago Tepetlapa","130","52","78","41" -"20","20","Oaxaca","Oax.","489","Santiago Tetepec","0001","Santiago Tetepec","4909","2378","2531","1350" -"20","20","Oaxaca","Oax.","490","Santiago Texcalcingo","0001","Santiago Texcalcingo","2974","1405","1569","762" -"20","20","Oaxaca","Oax.","491","Santiago Textitlán","0001","Santiago Textitlán","4930","2420","2510","908" -"20","20","Oaxaca","Oax.","492","Santiago Tilantongo","0001","Santiago Tilantongo","2764","1274","1490","909" -"20","20","Oaxaca","Oax.","493","Santiago Tillo","0001","Santiago Tillo","545","259","286","175" -"20","20","Oaxaca","Oax.","494","Santiago Tlazoyaltepec","0001","Santiago Tlazoyaltepec","6300","2906","3394","1300" -"20","20","Oaxaca","Oax.","495","Santiago Xanica","0001","Santiago Xanica","3029","1538","1491","809" -"20","20","Oaxaca","Oax.","496","Santiago Xiacuí","0001","Santiago Xiacuí","1893","906","987","538" -"20","20","Oaxaca","Oax.","497","Santiago Yaitepec","0001","Santiago Yaitepec","4233","1906","2327","954" -"20","20","Oaxaca","Oax.","498","Santiago Yaveo","0001","Santiago Yaveo","7593","3787","3806","2087" -"20","20","Oaxaca","Oax.","499","Santiago Yolomécatl","0001","Santiago Yolomécatl","1922","884","1038","540" -"20","20","Oaxaca","Oax.","500","Santiago Yosondúa","0001","Santiago Yosondúa","7991","3753","4238","2415" -"20","20","Oaxaca","Oax.","501","Santiago Yucuyachi","0001","Santiago Yucuyachi","998","493","505","327" -"20","20","Oaxaca","Oax.","502","Santiago Zacatepec","0001","Santiago Zacatepec","5089","2479","2610","1429" -"20","20","Oaxaca","Oax.","503","Santiago Zoochila","0001","Santiago Zoochila","425","206","219","124" -"20","20","Oaxaca","Oax.","504","Nuevo Zoquiápam","0001","Nuevo Zoquiápam","1590","762","828","404" -"20","20","Oaxaca","Oax.","505","Santo Domingo Ingenio","0001","Santo Domingo Ingenio","7681","3765","3916","2501" -"20","20","Oaxaca","Oax.","506","Santo Domingo Albarradas","0001","Santo Domingo Albarradas","798","377","421","232" -"20","20","Oaxaca","Oax.","507","Santo Domingo Armenta","0001","Santo Domingo Armenta","3155","1582","1573","937" -"20","20","Oaxaca","Oax.","508","Santo Domingo Chihuitán","0001","Santo Domingo Chihuitán","1618","793","825","546" -"20","20","Oaxaca","Oax.","509","Santo Domingo de Morelos","0001","Santo Domingo de Morelos","11384","5470","5914","2488" -"20","20","Oaxaca","Oax.","510","Santo Domingo Ixcatlán","0001","Santo Domingo Ixcatlán","760","345","415","222" -"20","20","Oaxaca","Oax.","511","Santo Domingo Nuxaá","0001","Santo Domingo Nuxaá","3335","1626","1709","916" -"20","20","Oaxaca","Oax.","512","Santo Domingo Ozolotepec","0001","Santo Domingo Ozolotepec","1101","525","576","267" -"20","20","Oaxaca","Oax.","513","Santo Domingo Petapa","0001","Santo Domingo Petapa","9027","4502","4525","2597" -"20","20","Oaxaca","Oax.","514","Santo Domingo Roayaga","0001","Santo Domingo Roayaga","941","450","491","248" -"20","20","Oaxaca","Oax.","515","Santo Domingo Tehuantepec","0001","Santo Domingo Tehuantepec","67739","32825","34914","19450" -"20","20","Oaxaca","Oax.","516","Santo Domingo Teojomulco","0001","Santo Domingo Teojomulco","5260","2576","2684","1316" -"20","20","Oaxaca","Oax.","517","Santo Domingo Tepuxtepec","0001","Santo Domingo Tepuxtepec","6029","2796","3233","1468" -"20","20","Oaxaca","Oax.","518","Santo Domingo Tlatayápam","0001","Santo Domingo Tlatayápam","113","52","61","42" -"20","20","Oaxaca","Oax.","519","Santo Domingo Tomaltepec","0001","Santo Domingo Tomaltepec","3386","1651","1735","916" -"20","20","Oaxaca","Oax.","520","Santo Domingo Tonalá","0001","Santo Domingo Tonalá","7393","3567","3826","1969" -"20","20","Oaxaca","Oax.","521","Santo Domingo Tonaltepec","0001","Santo Domingo Tonaltepec","250","117","133","79" -"20","20","Oaxaca","Oax.","522","Santo Domingo Xagacía","0001","Santo Domingo Xagacía","1205","554","651","350" -"20","20","Oaxaca","Oax.","523","Santo Domingo Yanhuitlán","0001","Santo Domingo Yanhuitlán","1633","759","874","519" -"20","20","Oaxaca","Oax.","524","Santo Domingo Yodohino","0001","Santo Domingo Yodohino","327","171","156","85" -"20","20","Oaxaca","Oax.","525","Santo Domingo Zanatepec","0001","Santo Domingo Zanatepec","12483","6150","6333","3819" -"20","20","Oaxaca","Oax.","526","Santos Reyes Nopala","0001","Santos Reyes Nopala","16688","7897","8791","4487" -"20","20","Oaxaca","Oax.","527","Santos Reyes Pápalo","0001","Santos Reyes Pápalo","2490","1218","1272","613" -"20","20","Oaxaca","Oax.","528","Santos Reyes Tepejillo","0001","Santos Reyes Tepejillo","904","414","490","287" -"20","20","Oaxaca","Oax.","529","Santos Reyes Yucuná","0001","Santos Reyes Yucuná","1474","731","743","255" -"20","20","Oaxaca","Oax.","530","Santo Tomás Jalieza","0001","Santo Tomás Jalieza","3923","1858","2065","967" -"20","20","Oaxaca","Oax.","531","Santo Tomás Mazaltepec","0001","Santo Tomás Mazaltepec","2612","1263","1349","679" -"20","20","Oaxaca","Oax.","532","Santo Tomás Ocotepec","0001","Santo Tomás Ocotepec","4066","1857","2209","1054" -"20","20","Oaxaca","Oax.","533","Santo Tomás Tamazulapan","0001","Santo Tomás Tamazulapan","2726","1308","1418","746" -"20","20","Oaxaca","Oax.","534","San Vicente Coatlán","0001","San Vicente Coatlán","3512","1617","1895","846" -"20","20","Oaxaca","Oax.","535","San Vicente Lachixío","0001","San Vicente Lachixío","3227","1460","1767","717" -"20","20","Oaxaca","Oax.","536","San Vicente Nuñú","0001","San Vicente Nuñú","449","211","238","151" -"20","20","Oaxaca","Oax.","537","Silacayoápam","0001","Silacayoápam","6710","3227","3483","1925" -"20","20","Oaxaca","Oax.","538","Sitio de Xitlapehua","0001","Sitio de Xitlapehua","713","349","364","203" -"20","20","Oaxaca","Oax.","539","Soledad Etla","0001","Soledad Etla","6348","3077","3271","1669" -"20","20","Oaxaca","Oax.","540","Villa de Tamazulápam del Progreso","0001","Villa de Tamazulápam del Progreso","8326","3756","4570","2236" -"20","20","Oaxaca","Oax.","541","Tanetze de Zaragoza","0001","Tanetze de Zaragoza","1558","746","812","501" -"20","20","Oaxaca","Oax.","542","Taniche","0001","Taniche","887","413","474","250" -"20","20","Oaxaca","Oax.","543","Tataltepec de Valdés","0001","Tataltepec de Valdés","6386","3112","3274","1631" -"20","20","Oaxaca","Oax.","544","Teococuilco de Marcos Pérez","0001","Teococuilco de Marcos Pérez","1032","499","533","296" -"20","20","Oaxaca","Oax.","545","Teotitlán de Flores Magón","0001","Teotitlán de Flores Magón","10099","4786","5313","2709" -"20","20","Oaxaca","Oax.","546","Teotitlán del Valle","0001","Teotitlán del Valle","6392","3037","3355","1695" -"20","20","Oaxaca","Oax.","547","Teotongo","0001","Teotongo","1005","457","548","321" -"20","20","Oaxaca","Oax.","548","Tepelmeme Villa de Morelos","0001","Tepelmeme Villa de Morelos","1960","916","1044","601" -"20","20","Oaxaca","Oax.","549","Heroica Villa Tezoatlán de Segura y Luna, Cuna de la Independencia de Oaxaca","0001","Heroica Villa Tezoatlán de Segura y Luna, Cuna de la Independencia de Oaxaca","11465","5396","6069","3300" -"20","20","Oaxaca","Oax.","550","San Jerónimo Tlacochahuaya","0001","San Jerónimo Tlacochahuaya","5764","2712","3052","1564" -"20","20","Oaxaca","Oax.","551","Tlacolula de Matamoros","0001","Tlacolula de Matamoros","30254","14385","15869","8362" -"20","20","Oaxaca","Oax.","552","Tlacotepec Plumas","0001","Tlacotepec Plumas","410","198","212","138" -"20","20","Oaxaca","Oax.","553","Tlalixtac de Cabrera","0001","Tlalixtac de Cabrera","12067","5772","6295","3119" -"20","20","Oaxaca","Oax.","554","Totontepec Villa de Morelos","0001","Totontepec Villa de Morelos","5904","2841","3063","1522" -"20","20","Oaxaca","Oax.","555","Trinidad Zaachila","0001","Trinidad Zaachila","3419","1607","1812","905" -"20","20","Oaxaca","Oax.","556","La Trinidad Vista Hermosa","0001","La Trinidad Vista Hermosa","306","151","155","91" -"20","20","Oaxaca","Oax.","557","Unión Hidalgo","0001","Unión Hidalgo","14542","7077","7465","4266" -"20","20","Oaxaca","Oax.","558","Valerio Trujano","0001","Valerio Trujano","1376","640","736","433" -"20","20","Oaxaca","Oax.","559","San Juan Bautista Valle Nacional","0001","San Juan Bautista Valle Nacional","23067","10986","12081","6032" -"20","20","Oaxaca","Oax.","560","Villa Díaz Ordaz","0001","Villa Díaz Ordaz","6467","2964","3503","1736" -"20","20","Oaxaca","Oax.","561","Yaxe","0001","Yaxe","2954","1430","1524","828" -"20","20","Oaxaca","Oax.","562","Magdalena Yodocono de Porfirio Díaz","0001","Magdalena Yodocono de Porfirio Díaz","1682","813","869","475" -"20","20","Oaxaca","Oax.","563","Yogana","0001","Yogana","1245","596","649","379" -"20","20","Oaxaca","Oax.","564","Yutanduchi de Guerrero","0001","Yutanduchi de Guerrero","1195","577","618","390" -"20","20","Oaxaca","Oax.","565","Villa de Zaachila","0001","Villa de Zaachila","46464","22163","24301","11810" -"20","20","Oaxaca","Oax.","566","San Mateo Yucutindoo","0009","San Mateo Yucutindoo","3144","1586","1558","901" -"20","20","Oaxaca","Oax.","567","Zapotitlán Lagunas","0001","Zapotitlán Lagunas","3382","1637","1745","872" -"20","20","Oaxaca","Oax.","568","Zapotitlán Palmas","0001","Zapotitlán Palmas","1695","765","930","488" -"20","20","Oaxaca","Oax.","569","Santa Inés de Zaragoza","0001","Santa Inés de Zaragoza","1454","694","760","480" -"20","20","Oaxaca","Oax.","570","Zimatlán de Álvarez","0001","Zimatlán de Álvarez","22093","10430","11663","5866" -"21","21","Puebla","Pue.","001","Acajete","0001","Acajete","72894","35139","37755","15230" -"21","21","Puebla","Pue.","002","Acateno","0001","San José Acateno","9170","4586","4584","2611" -"21","21","Puebla","Pue.","003","Acatlán","0001","Acatlán de Osorio","37955","17836","20119","10163" -"21","21","Puebla","Pue.","004","Acatzingo","0001","Acatzingo de Hidalgo","63743","30923","32820","13491" -"21","21","Puebla","Pue.","005","Acteopan","0001","Acteopan","3070","1446","1624","850" -"21","21","Puebla","Pue.","006","Ahuacatlán","0001","Ahuacatlán","14542","6852","7690","3643" -"21","21","Puebla","Pue.","007","Ahuatlán","0001","Ahuatlán","3162","1557","1605","789" -"21","21","Puebla","Pue.","008","Ahuazotepec","0001","Ahuazotepec","11439","5549","5890","2928" -"21","21","Puebla","Pue.","009","Ahuehuetitla","0001","Ahuehuetitla","2207","1053","1154","617" -"21","21","Puebla","Pue.","010","Ajalpan","0001","Ciudad de Ajalpan","74768","36191","38577","15581" -"21","21","Puebla","Pue.","011","Albino Zertuche","0001","Acaxtlahuacán de Albino Zertuche","1885","886","999","511" -"21","21","Puebla","Pue.","012","Aljojuca","0001","Aljojuca","6591","3100","3491","1706" -"21","21","Puebla","Pue.","013","Altepexi","0001","Altepexi","22629","10889","11740","4713" -"21","21","Puebla","Pue.","014","Amixtlán","0001","Amixtlán","4812","2270","2542","1352" -"21","21","Puebla","Pue.","015","Amozoc","0001","Amozoc de Mota","125876","61479","64397","31598" -"21","21","Puebla","Pue.","016","Aquixtla","0001","Aquixtla","9021","4508","4513","2491" -"21","21","Puebla","Pue.","017","Atempan","0001","Atempan","29742","14279","15463","6921" -"21","21","Puebla","Pue.","018","Atexcal","0001","San Martín Atexcal","3859","1841","2018","1108" -"21","21","Puebla","Pue.","019","Atlixco","0001","Atlixco","141793","66862","74931","37594" -"21","21","Puebla","Pue.","020","Atoyatempan","0001","Atoyatempan","7704","3760","3944","1831" -"21","21","Puebla","Pue.","021","Atzala","0001","Atzala","1512","729","783","402" -"21","21","Puebla","Pue.","022","Atzitzihuacán","0001","Santiago Atzitzihuacán","12857","6025","6832","3237" -"21","21","Puebla","Pue.","023","Atzitzintla","0001","Atzitzintla","9051","4421","4630","2081" -"21","21","Puebla","Pue.","024","Axutla","0001","Axutla","976","466","510","300" -"21","21","Puebla","Pue.","025","Ayotoxco de Guerrero","0001","Ayotoxco de Guerrero","8208","3968","4240","2318" -"21","21","Puebla","Pue.","026","Calpan","0001","San Andrés Calpan","15271","7337","7934","3605" -"21","21","Puebla","Pue.","027","Caltepec","0001","Caltepec","4128","1923","2205","1245" -"21","21","Puebla","Pue.","028","Camocuautla","0001","Camocuautla","2758","1367","1391","725" -"21","21","Puebla","Pue.","029","Caxhuacan","0001","Caxhuacan","3811","1816","1995","953" -"21","21","Puebla","Pue.","030","Coatepec","0001","Coatepec","772","372","400","224" -"21","21","Puebla","Pue.","031","Coatzingo","0001","Coatzingo","2820","1363","1457","788" -"21","21","Puebla","Pue.","032","Cohetzala","0001","Santa María Cohetzala","1382","719","663","418" -"21","21","Puebla","Pue.","033","Cohuecan","0001","Cohuecan","5403","2549","2854","1346" -"21","21","Puebla","Pue.","034","Coronango","0001","Santa María Coronango","46836","22984","23852","11231" -"21","21","Puebla","Pue.","035","Coxcatlán","0001","Coxcatlán","20653","9775","10878","5121" -"21","21","Puebla","Pue.","036","Coyomeapan","0001","Santa María Coyomeapan","14806","6943","7863","3501" -"21","21","Puebla","Pue.","037","Coyotepec","0001","San Vicente Coyotepec","2334","1099","1235","768" -"21","21","Puebla","Pue.","038","Cuapiaxtla de Madero","0001","Cuapiaxtla de Madero","10542","5196","5346","2365" -"21","21","Puebla","Pue.","039","Cuautempan","0001","San Esteban Cuautempan","9837","4659","5178","2860" -"21","21","Puebla","Pue.","040","Cuautinchán","0001","Cuautinchán","12340","6104","6236","2914" -"21","21","Puebla","Pue.","041","Cuautlancingo","0001","San Juan Cuautlancingo","137435","66950","70485","41184" -"21","21","Puebla","Pue.","042","Cuayuca de Andrade","0001","San Pedro Cuayuca","3315","1629","1686","951" -"21","21","Puebla","Pue.","043","Cuetzalan del Progreso","0001","Ciudad de Cuetzalan","49864","24149","25715","12640" -"21","21","Puebla","Pue.","044","Cuyoaco","0001","Cuyoaco","17139","8226","8913","4107" -"21","21","Puebla","Pue.","045","Chalchicomula de Sesma","0001","Ciudad Serdán","47410","22788","24622","11723" -"21","21","Puebla","Pue.","046","Chapulco","0001","Chapulco","8193","3937","4256","1916" -"21","21","Puebla","Pue.","047","Chiautla","0001","Ciudad de Chiautla de Tapia","21699","10672","11027","5847" -"21","21","Puebla","Pue.","048","Chiautzingo","0001","San Lorenzo Chiautzingo","22039","10496","11543","5004" -"21","21","Puebla","Pue.","049","Chiconcuautla","0001","Chiconcuautla","17382","8464","8918","4082" -"21","21","Puebla","Pue.","050","Chichiquila","0001","Chichiquila","26928","13303","13625","5311" -"21","21","Puebla","Pue.","051","Chietla","0001","Chietla","37030","17989","19041","10256" -"21","21","Puebla","Pue.","052","Chigmecatitlán","0001","Chigmecatitlán","1215","536","679","385" -"21","21","Puebla","Pue.","053","Chignahuapan","0001","Ciudad de Chignahuapan","66464","32162","34302","17157" -"21","21","Puebla","Pue.","054","Chignautla","0001","Chignautla","35223","16932","18291","7850" -"21","21","Puebla","Pue.","055","Chila","0001","Chila","5082","2418","2664","1428" -"21","21","Puebla","Pue.","056","Chila de la Sal","0001","Chila de la Sal","1317","635","682","426" -"21","21","Puebla","Pue.","057","Honey","0001","Honey","6687","3205","3482","1683" -"21","21","Puebla","Pue.","058","Chilchotla","0001","Rafael J. García","21002","10407","10595","4342" -"21","21","Puebla","Pue.","059","Chinantla","0001","Chinantla","2846","1382","1464","801" -"21","21","Puebla","Pue.","060","Domingo Arenas","0001","Domingo Arenas","7982","3832","4150","1857" -"21","21","Puebla","Pue.","061","Eloxochitlán","0001","Eloxochitlán","14461","7070","7391","3370" -"21","21","Puebla","Pue.","062","Epatlán","0001","San Juan Epatlán","4943","2421","2522","1330" -"21","21","Puebla","Pue.","063","Esperanza","0001","Esperanza","14766","7091","7675","3698" -"21","21","Puebla","Pue.","064","Francisco Z. Mena","0001","Metlaltoyuca","17824","8867","8957","5097" -"21","21","Puebla","Pue.","065","General Felipe Ángeles","0001","San Pablo de las Tunas","22694","10982","11712","5304" -"21","21","Puebla","Pue.","066","Guadalupe","0001","Guadalupe","6451","3013","3438","1857" -"21","21","Puebla","Pue.","067","Guadalupe Victoria","0001","Guadalupe Victoria","18784","9209","9575","4682" -"21","21","Puebla","Pue.","068","Hermenegildo Galeana","0001","Bienvenido","7011","3378","3633","1996" -"21","21","Puebla","Pue.","069","Huaquechula","0001","Huaquechula","29233","13800","15433","7249" -"21","21","Puebla","Pue.","070","Huatlatlauca","0001","Huatlatlauca","6111","2784","3327","1773" -"21","21","Puebla","Pue.","071","Huauchinango","0001","Huauchinango","103946","48818","55128","27579" -"21","21","Puebla","Pue.","072","Huehuetla","0001","Huehuetla","17082","8373","8709","3923" -"21","21","Puebla","Pue.","073","Huehuetlán El Chico","0001","Huehuetlán el Chico","9760","4792","4968","2564" -"21","21","Puebla","Pue.","074","Huejotzingo","0001","Huejotzingo","90794","44075","46719","22603" -"21","21","Puebla","Pue.","075","Hueyapan","0001","Hueyapan","13080","6259","6821","3288" -"21","21","Puebla","Pue.","076","Hueytamalco","0001","Hueytamalco","27600","13597","14003","7568" -"21","21","Puebla","Pue.","077","Hueytlalpan","0001","Hueytlalpan","5951","2924","3027","1439" -"21","21","Puebla","Pue.","078","Huitzilan de Serdán","0001","Huitzilan","15928","8092","7836","3925" -"21","21","Puebla","Pue.","079","Huitziltepec","0001","Santa Clara Huitziltepec","5782","2797","2985","1574" -"21","21","Puebla","Pue.","080","Atlequizayan","0001","Atlequizayan","2633","1228","1405","678" -"21","21","Puebla","Pue.","081","Ixcamilpa de Guerrero","0001","Ixcamilpa","4065","1948","2117","1101" -"21","21","Puebla","Pue.","082","Ixcaquixtla","0001","San Juan Ixcaquixtla","8804","4193","4611","2426" -"21","21","Puebla","Pue.","083","Ixtacamaxtitlán","0001","Ixtacamaxtitlán","25319","12488","12831","6427" -"21","21","Puebla","Pue.","084","Ixtepec","0001","Ixtepec","6950","3370","3580","1735" -"21","21","Puebla","Pue.","085","Izúcar de Matamoros","0001","Izúcar de Matamoros","82809","39551","43258","21681" -"21","21","Puebla","Pue.","086","Jalpan","0001","Jalpan","12050","5717","6333","3323" -"21","21","Puebla","Pue.","087","Jolalpan","0001","Jolalpan","13308","6418","6890","3395" -"21","21","Puebla","Pue.","088","Jonotla","0001","Jonotla","4457","2172","2285","1292" -"21","21","Puebla","Pue.","089","Jopala","0001","Jopala","12131","5817","6314","3188" -"21","21","Puebla","Pue.","090","Juan C. Bonilla","0001","Cuanalá","23783","11475","12308","5857" -"21","21","Puebla","Pue.","091","Juan Galindo","0001","Nuevo Necaxa","9828","4559","5269","2803" -"21","21","Puebla","Pue.","092","Juan N. Méndez","0001","Atenayuca","5293","2555","2738","1477" -"21","21","Puebla","Pue.","093","Lafragua","0001","Saltillo","7650","3709","3941","1945" -"21","21","Puebla","Pue.","094","Libres","0001","Ciudad de Libres","37257","18097","19160","8982" -"21","21","Puebla","Pue.","095","La Magdalena Tlatlauquitepec","0001","La Magdalena Tlatlauquitepec","650","324","326","169" -"21","21","Puebla","Pue.","096","Mazapiltepec de Juárez","0001","Mazapiltepec de Juárez","3176","1557","1619","771" -"21","21","Puebla","Pue.","097","Mixtla","0001","San Francisco Mixtla","2668","1270","1398","621" -"21","21","Puebla","Pue.","098","Molcaxac","0001","Molcaxac","6668","3173","3495","1833" -"21","21","Puebla","Pue.","099","Cañada Morelos","0001","Morelos Cañada","20659","9911","10748","5289" -"21","21","Puebla","Pue.","100","Naupan","0001","Naupan","9310","4320","4990","2366" -"21","21","Puebla","Pue.","101","Nauzontla","0001","Nauzontla","3317","1543","1774","986" -"21","21","Puebla","Pue.","102","Nealtican","0001","San Buenaventura Nealtican","14075","6815","7260","3141" -"21","21","Puebla","Pue.","103","Nicolás Bravo","0001","Nicolás Bravo","6644","3230","3414","1578" -"21","21","Puebla","Pue.","104","Nopalucan","0001","Nopalucan de la Granja","32772","15891","16881","7230" -"21","21","Puebla","Pue.","105","Ocotepec","0001","Ocotepec","5077","2433","2644","1354" -"21","21","Puebla","Pue.","106","Ocoyucan","0001","Santa Clara Ocoyucan","42669","20420","22249","10747" -"21","21","Puebla","Pue.","107","Olintla","0001","Olintla","11993","5835","6158","2780" -"21","21","Puebla","Pue.","108","Oriental","0001","Oriental","19903","9678","10225","4719" -"21","21","Puebla","Pue.","109","Pahuatlán","0001","Ciudad de Pahuatlán de Valle","20274","9674","10600","5352" -"21","21","Puebla","Pue.","110","Palmar de Bravo","0001","Palmar de Bravo","50226","24595","25631","12072" -"21","21","Puebla","Pue.","111","Pantepec","0001","Pantepec","18528","8904","9624","5229" -"21","21","Puebla","Pue.","112","Petlalcingo","0001","Petlalcingo","9350","4489","4861","2586" -"21","21","Puebla","Pue.","113","Piaxtla","0001","Piaxtla","4627","2262","2365","1414" -"21","21","Puebla","Pue.","114","Puebla","0001","Heroica Puebla de Zaragoza","1692181","809485","882696","477771" -"21","21","Puebla","Pue.","115","Quecholac","0001","Quecholac","57992","28367","29625","13493" -"21","21","Puebla","Pue.","116","Quimixtlán","0001","Quimixtlán","22855","11102","11753","4788" -"21","21","Puebla","Pue.","117","Rafael Lara Grajales","0001","Ciudad de Rafael Lara Grajales","15952","7625","8327","3711" -"21","21","Puebla","Pue.","118","Los Reyes de Juárez","0001","Los Reyes de Juárez","30021","14606","15415","6511" -"21","21","Puebla","Pue.","119","San Andrés Cholula","0001","San Andrés Cholula","154448","74272","80176","44827" -"21","21","Puebla","Pue.","120","San Antonio Cañada","0001","San Antonio Cañada","5938","2791","3147","1381" -"21","21","Puebla","Pue.","121","San Diego La Mesa Tochimiltzingo","0001","Tochimiltzingo","1270","626","644","364" -"21","21","Puebla","Pue.","122","San Felipe Teotlalcingo","0001","San Felipe Teotlalcingo","11063","5349","5714","2634" -"21","21","Puebla","Pue.","123","San Felipe Tepatlán","0001","San Felipe Tepatlán","3793","1829","1964","1073" -"21","21","Puebla","Pue.","124","San Gabriel Chilac","0001","San Gabriel Chilac","15954","7569","8385","3897" -"21","21","Puebla","Pue.","125","San Gregorio Atzompa","0001","San Gregorio Atzompa","9671","4682","4989","2488" -"21","21","Puebla","Pue.","126","San Jerónimo Tecuanipan","0001","San Jerónimo Tecuanipan","6597","3118","3479","1460" -"21","21","Puebla","Pue.","127","San Jerónimo Xayacatlán","0001","San Jerónimo Xayacatlán","3606","1734","1872","1158" -"21","21","Puebla","Pue.","128","San José Chiapa","0001","San José Chiapa","10443","5107","5336","2503" -"21","21","Puebla","Pue.","129","San José Miahuatlán","0001","San José Miahuatlán","14018","6720","7298","3531" -"21","21","Puebla","Pue.","130","San Juan Atenco","0001","San Juan Atenco","3604","1660","1944","964" -"21","21","Puebla","Pue.","131","San Juan Atzompa","0001","San Juan Atzompa","975","508","467","273" -"21","21","Puebla","Pue.","132","San Martín Texmelucan","0001","San Martín Texmelucan de Labastida","155738","74922","80816","38321" -"21","21","Puebla","Pue.","133","San Martín Totoltepec","0001","San Martín Totoltepec","692","358","334","194" -"21","21","Puebla","Pue.","134","San Matías Tlalancaleca","0001","San Matías Tlalancaleca","20974","10218","10756","5150" -"21","21","Puebla","Pue.","135","San Miguel Ixitlán","0001","San Miguel Ixitlán","526","254","272","180" -"21","21","Puebla","Pue.","136","San Miguel Xoxtla","0001","San Miguel Xoxtla","12461","6089","6372","2844" -"21","21","Puebla","Pue.","137","San Nicolás Buenos Aires","0001","San Nicolás Buenos Aires","10464","5120","5344","2464" -"21","21","Puebla","Pue.","138","San Nicolás de los Ranchos","0001","San Nicolás de los Ranchos","11780","5737","6043","2633" -"21","21","Puebla","Pue.","139","San Pablo Anicano","0001","San Pablo Anicano","3759","1791","1968","1024" -"21","21","Puebla","Pue.","140","San Pedro Cholula","0001","Cholula de Rivadavia","138433","66454","71979","36581" -"21","21","Puebla","Pue.","141","San Pedro Yeloixtlahuaca","0001","San Pedro Yeloixtlahuaca","3488","1685","1803","1044" -"21","21","Puebla","Pue.","142","San Salvador El Seco","0001","San Salvador el Seco","30639","14990","15649","7439" -"21","21","Puebla","Pue.","143","San Salvador El Verde","0001","San Salvador el Verde","34880","16955","17925","8450" -"21","21","Puebla","Pue.","144","San Salvador Huixcolotla","0001","San Salvador Huixcolotla","16790","8176","8614","3600" -"21","21","Puebla","Pue.","145","San Sebastián Tlacotepec","0001","Tlacotepec de Porfirio Díaz","13189","6486","6703","3283" -"21","21","Puebla","Pue.","146","Santa Catarina Tlaltempan","0001","Santa Catarina Tlaltempan","749","372","377","256" -"21","21","Puebla","Pue.","147","Santa Inés Ahuatempan","0001","Santa Inés Ahuatempan","6341","3038","3303","1818" -"21","21","Puebla","Pue.","148","Santa Isabel Cholula","0001","Santa Isabel Cholula","11498","5613","5885","2603" -"21","21","Puebla","Pue.","149","Santiago Miahuatlán","0001","Santiago Miahuatlán","30309","14673","15636","7414" -"21","21","Puebla","Pue.","150","Huehuetlán El Grande","0001","Santo Domingo Huehuetlán","6105","2946","3159","1712" -"21","21","Puebla","Pue.","151","Santo Tomás Hueyotlipan","0001","Santo Tomás Hueyotlipan","9315","4524","4791","2255" -"21","21","Puebla","Pue.","152","Soltepec","0001","Soltepec","12631","6103","6528","2954" -"21","21","Puebla","Pue.","153","Tecali de Herrera","0001","Tecali de Herrera","23625","11494","12131","6008" -"21","21","Puebla","Pue.","154","Tecamachalco","0001","Tecamachalco","80771","38781","41990","20018" -"21","21","Puebla","Pue.","155","Tecomatlán","0001","Tecomatlán","6830","3416","3414","1878" -"21","21","Puebla","Pue.","156","Tehuacán","0001","Tehuacán","327312","154407","172905","85383" -"21","21","Puebla","Pue.","157","Tehuitzingo","0001","Tehuitzingo","12672","6093","6579","3410" -"21","21","Puebla","Pue.","158","Tenampulco","0001","Tenampulco","6743","3304","3439","2075" -"21","21","Puebla","Pue.","159","Teopantlán","0001","Teopantlán","3836","1712","2124","1161" -"21","21","Puebla","Pue.","160","Teotlalco","0001","Teotlalco","3689","1840","1849","1012" -"21","21","Puebla","Pue.","161","Tepanco de López","0001","Tepanco de López","22218","10401","11817","5582" -"21","21","Puebla","Pue.","162","Tepango de Rodríguez","0001","Tepango de Rodríguez","4155","1919","2236","1046" -"21","21","Puebla","Pue.","163","Tepatlaxco de Hidalgo","0001","Tepatlaxco de Hidalgo","18854","9120","9734","4096" -"21","21","Puebla","Pue.","164","Tepeaca","0001","Tepeaca","84270","40509","43761","18578" -"21","21","Puebla","Pue.","165","Tepemaxalco","0001","San Felipe Tepemaxalco","1216","614","602","264" -"21","21","Puebla","Pue.","166","Tepeojuma","0001","Tepeojuma","8918","4139","4779","2259" -"21","21","Puebla","Pue.","167","Tepetzintla","0001","Tepetzintla","10373","4915","5458","2567" -"21","21","Puebla","Pue.","168","Tepexco","0001","Tepexco","7523","3704","3819","1788" -"21","21","Puebla","Pue.","169","Tepexi de Rodríguez","0001","Tepexi de Rodríguez","22331","11194","11137","6092" -"21","21","Puebla","Pue.","170","Tepeyahualco","0001","Tepeyahualco","19200","9366","9834","4717" -"21","21","Puebla","Pue.","171","Tepeyahualco de Cuauhtémoc","0001","Tepeyahualco de Cuauhtémoc","3851","1816","2035","1021" -"21","21","Puebla","Pue.","172","Tetela de Ocampo","0001","Ciudad de Tetela de Ocampo","27216","13100","14116","7723" -"21","21","Puebla","Pue.","173","Teteles de Ávila Castillo","0001","Teteles de Ávila Castillo","6653","2887","3766","1756" -"21","21","Puebla","Pue.","174","Teziutlán","0001","Teziutlán","103583","48649","54934","28295" -"21","21","Puebla","Pue.","175","Tianguismanalco","0001","Tianguismanalco","14432","6990","7442","3593" -"21","21","Puebla","Pue.","176","Tilapa","0001","Tilapa","9664","4635","5029","2608" -"21","21","Puebla","Pue.","177","Tlacotepec de Benito Juárez","0001","Tlacotepec de Benito Juárez","54757","25754","29003","13123" -"21","21","Puebla","Pue.","178","Tlacuilotepec","0001","Tlacuilotepec","15977","7876","8101","4447" -"21","21","Puebla","Pue.","179","Tlachichuca","0001","Tlachichuca","31639","15498","16141","7237" -"21","21","Puebla","Pue.","180","Tlahuapan","0001","Santa Rita Tlahuapan","41547","20461","21086","9941" -"21","21","Puebla","Pue.","181","Tlaltenango","0001","Tlaltenango","7425","3634","3791","1744" -"21","21","Puebla","Pue.","182","Tlanepantla","0001","Tlanepantla","5390","2582","2808","1122" -"21","21","Puebla","Pue.","183","Tlaola","0001","Tlaola","20433","9850","10583","5008" -"21","21","Puebla","Pue.","184","Tlapacoya","0001","Tlapacoya","6422","3075","3347","1704" -"21","21","Puebla","Pue.","185","Tlapanalá","0001","Tlapanalá","10344","5050","5294","2545" -"21","21","Puebla","Pue.","186","Tlatlauquitepec","0001","Ciudad de Tlatlauquitepec","55576","26617","28959","14396" -"21","21","Puebla","Pue.","187","Tlaxco","0001","Tlaxco","4934","2428","2506","1429" -"21","21","Puebla","Pue.","188","Tochimilco","0001","Tochimilco","19315","9196","10119","4773" -"21","21","Puebla","Pue.","189","Tochtepec","0001","Tochtepec","22454","10828","11626","5309" -"21","21","Puebla","Pue.","190","Totoltepec de Guerrero","0001","Totoltepec de Guerrero","1187","553","634","422" -"21","21","Puebla","Pue.","191","Tulcingo","0001","Tulcingo de Valle","9871","4641","5230","2792" -"21","21","Puebla","Pue.","192","Tuzamapan de Galeana","0001","Tuzamapan de Galeana","5924","2909","3015","1650" -"21","21","Puebla","Pue.","193","Tzicatlacoyan","0001","Tzicatlacoyan","6476","3190","3286","1750" -"21","21","Puebla","Pue.","194","Venustiano Carranza","0001","Venustiano Carranza","28395","13413","14982","7864" -"21","21","Puebla","Pue.","195","Vicente Guerrero","0001","Santa María del Monte","26559","12434","14125","5974" -"21","21","Puebla","Pue.","196","Xayacatlán de Bravo","0001","Xayacatlán de Bravo","1570","726","844","483" -"21","21","Puebla","Pue.","197","Xicotepec","0001","Xicotepec de Juárez","80591","38448","42143","21274" -"21","21","Puebla","Pue.","198","Xicotlán","0001","Xicotlán","1312","628","684","348" -"21","21","Puebla","Pue.","199","Xiutetelco","0001","San Juan Xiutetelco","42943","20679","22264","9899" -"21","21","Puebla","Pue.","200","Xochiapulco","0001","Cinco de Mayo","3443","1625","1818","1018" -"21","21","Puebla","Pue.","201","Xochiltepec","0001","Xochiltepec","3375","1568","1807","872" -"21","21","Puebla","Pue.","202","Xochitlán de Vicente Suárez","0001","Xochitlán de Vicente Suárez","13025","6262","6763","3399" -"21","21","Puebla","Pue.","203","Xochitlán Todos Santos","0001","Xochitlán","7178","3407","3771","1880" -"21","21","Puebla","Pue.","204","Yaonáhuac","0001","Yaonáhuac","7926","3683","4243","1997" -"21","21","Puebla","Pue.","205","Yehualtepec","0001","Yehualtepec","26392","12709","13683","6528" -"21","21","Puebla","Pue.","206","Zacapala","0001","Zacapala","4647","2205","2442","1303" -"21","21","Puebla","Pue.","207","Zacapoaxtla","0001","Zacapoaxtla","57887","27151","30736","14790" -"21","21","Puebla","Pue.","208","Zacatlán","0001","Zacatlán","87361","41505","45856","22891" -"21","21","Puebla","Pue.","209","Zapotitlán","0001","Zapotitlán Salinas","8595","3985","4610","2296" -"21","21","Puebla","Pue.","210","Zapotitlán de Méndez","0001","Zapotitlán de Méndez","5675","2793","2882","1456" -"21","21","Puebla","Pue.","211","Zaragoza","0001","Zaragoza","16752","7754","8998","4418" -"21","21","Puebla","Pue.","212","Zautla","0001","Santiago Zautla","20717","9828","10889","5151" -"21","21","Puebla","Pue.","213","Zihuateutla","0001","Zihuateutla","11967","5774","6193","3176" -"21","21","Puebla","Pue.","214","Zinacatepec","0001","San Sebastián Zinacatepec","18359","8781","9578","4409" -"21","21","Puebla","Pue.","215","Zongozotla","0001","Zongozotla","4539","2217","2322","1160" -"21","21","Puebla","Pue.","216","Zoquiapan","0001","Zoquiapan","2452","1138","1314","741" -"21","21","Puebla","Pue.","217","Zoquitlán","0001","Zoquitlán","20335","9705","10630","4724" -"22","22","Querétaro","Qro.","001","Amealco de Bonfil","0001","Amealco de Bonfil","66841","32235","34606","17126" -"22","22","Querétaro","Qro.","002","Pinal de Amoles","0001","Pinal de Amoles","27365","13293","14072","6805" -"22","22","Querétaro","Qro.","003","Arroyo Seco","0001","Arroyo Seco","13142","6270","6872","3812" -"22","22","Querétaro","Qro.","004","Cadereyta de Montes","0001","Cadereyta de Montes","69075","32993","36082","17329" -"22","22","Querétaro","Qro.","005","Colón","0001","Colón","67121","33211","33910","16156" -"22","22","Querétaro","Qro.","006","Corregidora","0001","El Pueblito","212567","103032","109535","64383" -"22","22","Querétaro","Qro.","007","Ezequiel Montes","0001","Ezequiel Montes","45141","21692","23449","10859" -"22","22","Querétaro","Qro.","008","Huimilpan","0001","Huimilpan","36808","17345","19463","9906" -"22","22","Querétaro","Qro.","009","Jalpan de Serra","0001","Jalpan de Serra","27343","13036","14307","7585" -"22","22","Querétaro","Qro.","010","Landa de Matamoros","0001","Landa de Matamoros","18794","8988","9806","5352" -"22","22","Querétaro","Qro.","011","El Marqués","0001","La Cañada","231668","115483","116185","67968" -"22","22","Querétaro","Qro.","012","Pedro Escobedo","0001","Pedro Escobedo","77404","37925","39479","19076" -"22","22","Querétaro","Qro.","013","Peñamiller","0001","Peñamiller","19141","9352","9789","4869" -"22","22","Querétaro","Qro.","014","Querétaro","0001","Santiago de Querétaro","1049777","514589","535188","305518" -"22","22","Querétaro","Qro.","015","San Joaquín","0001","San Joaquín","8359","3875","4484","2275" -"22","22","Querétaro","Qro.","016","San Juan del Río","0001","San Juan del Río","297804","145350","152454","83754" -"22","22","Querétaro","Qro.","017","Tequisquiapan","0001","Tequisquiapan","72201","35023","37178","18959" -"22","22","Querétaro","Qro.","018","Tolimán","0001","Tolimán","27916","13128","14788","7039" -"23","23","Quintana Roo","Q. Roo","001","Cozumel","0001","Cozumel","88626","44415","44211","26424" -"23","23","Quintana Roo","Q. Roo","002","Felipe Carrillo Puerto","0001","Felipe Carrillo Puerto","83990","41954","42036","21466" -"23","23","Quintana Roo","Q. Roo","003","Isla Mujeres","0001","Isla Mujeres","22686","11542","11144","6773" -"23","23","Quintana Roo","Q. Roo","004","Othón P. Blanco","0001","Chetumal","233648","115096","118552","70782" -"23","23","Quintana Roo","Q. Roo","005","Benito Juárez","0001","Cancún","911503","459325","452178","287117" -"23","23","Quintana Roo","Q. Roo","006","José María Morelos","0069","José María Morelos","39165","19855","19310","10429" -"23","23","Quintana Roo","Q. Roo","007","Lázaro Cárdenas","0001","Kantunilkín","29171","14844","14327","7918" -"23","23","Quintana Roo","Q. Roo","008","Solidaridad","0001","Playa del Carmen","333800","170476","163324","110776" -"23","23","Quintana Roo","Q. Roo","009","Tulum","0001","Tulum","46721","24390","22331","14029" -"23","23","Quintana Roo","Q. Roo","010","Bacalar","0001","Bacalar","41754","21051","20703","11186" -"23","23","Quintana Roo","Q. Roo","011","Puerto Morelos","0001","Puerto Morelos","26921","13831","13090","8735" -"24","24","San Luis Potosí","SLP","001","Ahualulco del Sonido 13","0001","Ahualulco del Sonido 13","18974","8945","10029","4723" -"24","24","San Luis Potosí","SLP","002","Alaquines","0001","Alaquines","7785","3787","3998","2183" -"24","24","San Luis Potosí","SLP","003","Aquismón","0001","Aquismón","48359","24013","24346","12520" -"24","24","San Luis Potosí","SLP","004","Armadillo de los Infante","0001","Armadillo de los Infante","4013","1997","2016","1166" -"24","24","San Luis Potosí","SLP","005","Cárdenas","0001","Cárdenas","18317","8735","9582","5223" -"24","24","San Luis Potosí","SLP","006","Catorce","0001","Real de Catorce","9579","4890","4689","2613" -"24","24","San Luis Potosí","SLP","007","Cedral","0001","Cedral","19840","9676","10164","5087" -"24","24","San Luis Potosí","SLP","008","Cerritos","0001","Cerritos","22075","10782","11293","6376" -"24","24","San Luis Potosí","SLP","009","Cerro de San Pedro","0001","Cerro de San Pedro","5050","2553","2497","1365" -"24","24","San Luis Potosí","SLP","010","Ciudad del Maíz","0001","Ciudad del Maíz","30320","14995","15325","8042" -"24","24","San Luis Potosí","SLP","011","Ciudad Fernández","0001","Ciudad Fernández","48106","23443","24663","12807" -"24","24","San Luis Potosí","SLP","012","Tancanhuitz","0001","Tancanhuitz","20300","10001","10299","5203" -"24","24","San Luis Potosí","SLP","013","Ciudad Valles","0001","Ciudad Valles","179371","86362","93009","53342" -"24","24","San Luis Potosí","SLP","014","Coxcatlán","0001","Coxcatlán","15660","7763","7897","4199" -"24","24","San Luis Potosí","SLP","015","Charcas","0001","Charcas","21814","10656","11158","6018" -"24","24","San Luis Potosí","SLP","016","Ebano","0001","Ebano","40899","19931","20968","11752" -"24","24","San Luis Potosí","SLP","017","Guadalcázar","0001","Guadalcázar","25119","12511","12608","6512" -"24","24","San Luis Potosí","SLP","018","Huehuetlán","0001","Huehuetlán","15334","7482","7852","4063" -"24","24","San Luis Potosí","SLP","019","Lagunillas","0001","Lagunillas","5453","2730","2723","1718" -"24","24","San Luis Potosí","SLP","020","Matehuala","0001","Matehuala","102199","49651","52548","27355" -"24","24","San Luis Potosí","SLP","021","Mexquitic de Carmona","0001","Mexquitic de Carmona","58469","27871","30598","13866" -"24","24","San Luis Potosí","SLP","022","Moctezuma","0001","Moctezuma","19036","9081","9955","5183" -"24","24","San Luis Potosí","SLP","023","Rayón","0001","Rayón","15301","7458","7843","4471" -"24","24","San Luis Potosí","SLP","024","Rioverde","0001","Rioverde","97943","47043","50900","27149" -"24","24","San Luis Potosí","SLP","025","Salinas","0001","Salinas de Hidalgo","31107","14874","16233","7848" -"24","24","San Luis Potosí","SLP","026","San Antonio","0001","San Antonio","9382","4704","4678","2394" -"24","24","San Luis Potosí","SLP","027","San Ciro de Acosta","0001","San Ciro de Acosta","10215","4941","5274","3031" -"24","24","San Luis Potosí","SLP","028","San Luis Potosí","0001","San Luis Potosí","911908","440897","471011","259503" -"24","24","San Luis Potosí","SLP","029","San Martín Chalchicuautla","0001","San Martín Chalchicuautla","18468","9107","9361","5262" -"24","24","San Luis Potosí","SLP","030","San Nicolás Tolentino","0001","San Nicolás Tolentino","4779","2371","2408","1508" -"24","24","San Luis Potosí","SLP","031","Santa Catarina","0001","Santa Catarina","12163","5917","6246","2952" -"24","24","San Luis Potosí","SLP","032","Santa María del Río","0001","Santa María del Río","39880","19158","20722","10222" -"24","24","San Luis Potosí","SLP","033","Santo Domingo","0001","Santo Domingo","10785","5279","5506","2914" -"24","24","San Luis Potosí","SLP","034","San Vicente Tancuayalab","0001","San Vicente Tancuayalab","14945","7411","7534","4161" -"24","24","San Luis Potosí","SLP","035","Soledad de Graciano Sánchez","0001","Soledad de Graciano Sánchez","332072","161877","170195","91824" -"24","24","San Luis Potosí","SLP","036","Tamasopo","0001","Tamasopo","29184","14746","14438","8391" -"24","24","San Luis Potosí","SLP","037","Tamazunchale","0001","Tamazunchale","95037","46209","48828","24458" -"24","24","San Luis Potosí","SLP","038","Tampacán","0001","Tampacán","14348","7281","7067","3855" -"24","24","San Luis Potosí","SLP","039","Tampamolón Corona","0001","Tampamolón Corona","13603","6755","6848","3530" -"24","24","San Luis Potosí","SLP","040","Tamuín","0001","Tamuín","36968","18109","18859","10553" -"24","24","San Luis Potosí","SLP","041","Tanlajás","0001","Tanlajás","18208","9111","9097","4959" -"24","24","San Luis Potosí","SLP","042","Tanquián de Escobedo","0001","Tanquián de Escobedo","13448","6573","6875","3701" -"24","24","San Luis Potosí","SLP","043","Tierra Nueva","0001","Tierra Nueva","7966","3720","4246","2184" -"24","24","San Luis Potosí","SLP","044","Vanegas","0001","Vanegas","7557","3806","3751","1970" -"24","24","San Luis Potosí","SLP","045","Venado","0001","Venado","14188","7016","7172","3982" -"24","24","San Luis Potosí","SLP","046","Villa de Arriaga","0001","Villa de Arriaga","18206","8993","9213","4645" -"24","24","San Luis Potosí","SLP","047","Villa de Guadalupe","0001","Villa de Guadalupe","9277","4631","4646","2505" -"24","24","San Luis Potosí","SLP","048","Villa de la Paz","0001","Villa de la Paz","5298","2634","2664","1333" -"24","24","San Luis Potosí","SLP","049","Villa de Ramos","0001","Villa de Ramos","38389","18267","20122","9985" -"24","24","San Luis Potosí","SLP","050","Villa de Reyes","0001","Villa de Reyes","52912","26163","26749","12160" -"24","24","San Luis Potosí","SLP","051","Villa Hidalgo","0001","Villa Hidalgo","15458","7655","7803","4220" -"24","24","San Luis Potosí","SLP","052","Villa Juárez","0001","Villa Juárez","10304","5135","5169","2967" -"24","24","San Luis Potosí","SLP","053","Axtla de Terrazas","0001","Axtla de Terrazas","32544","15917","16627","8507" -"24","24","San Luis Potosí","SLP","054","Xilitla","0001","Xilitla","49741","24430","25311","12698" -"24","24","San Luis Potosí","SLP","055","Zaragoza","0001","Villa de Zaragoza","27386","13482","13904","6450" -"24","24","San Luis Potosí","SLP","056","Villa de Arista","0002","Villa de Arista","17258","8370","8888","4304" -"24","24","San Luis Potosí","SLP","057","Matlapa","0001","Matlapa","28996","14111","14885","7223" -"24","24","San Luis Potosí","SLP","058","El Naranjo","0001","El Naranjo","20959","10445","10514","5881" -"25","25","Sinaloa","Sin.","001","Ahome","0001","Los Mochis","459310","225316","233994","133947" -"25","25","Sinaloa","Sin.","002","Angostura","0001","Angostura","44093","22129","21964","12958" -"25","25","Sinaloa","Sin.","003","Badiraguato","0001","Badiraguato","26542","13669","12873","7252" -"25","25","Sinaloa","Sin.","004","Concordia","0001","Heroica Ciudad Concordia","24899","12539","12360","7220" -"25","25","Sinaloa","Sin.","005","Cosalá","0001","Cosalá","17012","8676","8336","4175" -"25","25","Sinaloa","Sin.","006","Culiacán","0001","Culiacán Rosales","1003530","491046","512484","281726" -"25","25","Sinaloa","Sin.","007","Choix","0001","Choix","29334","14889","14445","8177" -"25","25","Sinaloa","Sin.","008","Elota","0001","La Cruz","55339","28546","26793","12178" -"25","25","Sinaloa","Sin.","009","Escuinapa","0001","Escuinapa de Hidalgo","59988","30101","29887","16272" -"25","25","Sinaloa","Sin.","010","El Fuerte","0001","El Fuerte","96593","48456","48137","26506" -"25","25","Sinaloa","Sin.","011","Guasave","0001","Guasave","289370","143018","146352","77926" -"25","25","Sinaloa","Sin.","012","Mazatlán","0001","Mazatlán","501441","245381","256060","152976" -"25","25","Sinaloa","Sin.","013","Mocorito","0001","Mocorito","40358","20575","19783","11588" -"25","25","Sinaloa","Sin.","014","Rosario","0001","El Rosario","52345","26449","25896","14817" -"25","25","Sinaloa","Sin.","015","Salvador Alvarado","0001","Guamúchil","79492","38424","41068","23229" -"25","25","Sinaloa","Sin.","016","San Ignacio","0001","San Ignacio","19505","10282","9223","5554" -"25","25","Sinaloa","Sin.","017","Sinaloa","0001","Sinaloa de Leyva","78670","39850","38820","21078" -"25","25","Sinaloa","Sin.","018","Navolato","0001","Navolato","149122","75469","73653","37692" -"26","26","Sonora","Son.","001","Aconchi","0001","Aconchi","2563","1336","1227","790" -"26","26","Sonora","Son.","002","Agua Prieta","0001","Agua Prieta","91929","45811","46118","27092" -"26","26","Sonora","Son.","003","Álamos","0001","Álamos","24976","12909","12067","7135" -"26","26","Sonora","Son.","004","Altar","0001","Altar","9492","4712","4780","2668" -"26","26","Sonora","Son.","005","Arivechi","0001","Arivechi","1177","594","583","395" -"26","26","Sonora","Son.","006","Arizpe","0001","Arizpe","2788","1446","1342","968" -"26","26","Sonora","Son.","007","Atil","0001","Atil","626","310","316","191" -"26","26","Sonora","Son.","008","Bacadéhuachi","0001","Bacadéhuachi","979","522","457","346" -"26","26","Sonora","Son.","009","Bacanora","0001","Bacanora","759","390","369","262" -"26","26","Sonora","Son.","010","Bacerac","0001","Bacerac","1221","603","618","380" -"26","26","Sonora","Son.","011","Bacoachi","0001","Bacoachi","1475","750","725","516" -"26","26","Sonora","Son.","012","Bácum","0001","Bácum","23151","11784","11367","6407" -"26","26","Sonora","Son.","013","Banámichi","0001","Banámichi","1825","924","901","565" -"26","26","Sonora","Son.","014","Baviácora","0001","Baviácora","3191","1662","1529","1041" -"26","26","Sonora","Son.","015","Bavispe","0001","Bavispe","1169","618","551","387" -"26","26","Sonora","Son.","016","Benjamín Hill","0001","Benjamín Hill","4988","2483","2505","1544" -"26","26","Sonora","Son.","017","Caborca","0001","Heroica Caborca","89122","44736","44386","26335" -"26","26","Sonora","Son.","018","Cajeme","0001","Ciudad Obregón","436484","214601","221883","135744" -"26","26","Sonora","Son.","019","Cananea","0001","Heroica Ciudad de Cananea","39451","19610","19841","11594" -"26","26","Sonora","Son.","020","Carbó","0001","Carbó","4946","2568","2378","1402" -"26","26","Sonora","Son.","021","La Colorada","0001","La Colorada","1848","1020","828","683" -"26","26","Sonora","Son.","022","Cucurpe","0001","Cucurpe","863","470","393","315" -"26","26","Sonora","Son.","023","Cumpas","0001","Cumpas","5829","2965","2864","1861" -"26","26","Sonora","Son.","024","Divisaderos","0001","Divisaderos","753","394","359","242" -"26","26","Sonora","Son.","025","Empalme","0001","Empalme","51431","25968","25463","14807" -"26","26","Sonora","Son.","026","Etchojoa","0001","Etchojoa","61309","31308","30001","15534" -"26","26","Sonora","Son.","027","Fronteras","0001","Fronteras","9041","4580","4461","2697" -"26","26","Sonora","Son.","028","Granados","0001","Granados","1009","524","485","342" -"26","26","Sonora","Son.","029","Guaymas","0001","Heroica Guaymas","156863","77987","78876","47136" -"26","26","Sonora","Son.","030","Hermosillo","0001","Hermosillo","936263","467490","468773","278712" -"26","26","Sonora","Son.","031","Huachinera","0001","Huachinera","1186","607","579","395" -"26","26","Sonora","Son.","032","Huásabas","0001","Huásabas","888","467","421","299" -"26","26","Sonora","Son.","033","Huatabampo","0001","Huatabampo","77682","39417","38265","21446" -"26","26","Sonora","Son.","034","Huépac","0001","Huépac","943","494","449","328" -"26","26","Sonora","Son.","035","Imuris","0001","Imuris","12536","6401","6135","3553" -"26","26","Sonora","Son.","036","Magdalena","0001","Magdalena de Kino","33049","16230","16819","9868" -"26","26","Sonora","Son.","037","Mazatán","0001","Mazatán","1101","594","507","402" -"26","26","Sonora","Son.","038","Moctezuma","0001","Moctezuma","5173","2543","2630","1725" -"26","26","Sonora","Son.","039","Naco","0001","Naco","5774","2897","2877","1698" -"26","26","Sonora","Son.","040","Nácori Chico","0001","Nácori Chico","1531","808","723","502" -"26","26","Sonora","Son.","041","Nacozari de García","0001","Nacozari de García","14369","7274","7095","4351" -"26","26","Sonora","Son.","042","Navojoa","0001","Navojoa","164387","81264","83123","46935" -"26","26","Sonora","Son.","043","Nogales","0001","Heroica Nogales","264782","132260","132522","78396" -"26","26","Sonora","Son.","044","Ónavas","0001","Ónavas","365","184","181","120" -"26","26","Sonora","Son.","045","Opodepe","0001","Opodepe","2438","1325","1113","828" -"26","26","Sonora","Son.","046","Oquitoa","0001","Oquitoa","496","231","265","156" -"26","26","Sonora","Son.","047","Pitiquito","0001","Pitiquito","9122","4694","4428","2770" -"26","26","Sonora","Son.","048","Puerto Peñasco","0001","Puerto Peñasco","62689","31636","31053","19189" -"26","26","Sonora","Son.","049","Quiriego","0001","Quiriego","3090","1618","1472","934" -"26","26","Sonora","Son.","050","Rayón","0001","Rayón","1496","809","687","540" -"26","26","Sonora","Son.","051","Rosario","0001","Rosario","4830","2484","2346","1508" -"26","26","Sonora","Son.","052","Sahuaripa","0001","Sahuaripa","5257","2719","2538","1746" -"26","26","Sonora","Son.","053","San Felipe de Jesús","0001","San Felipe de Jesús","369","201","168","126" -"26","26","Sonora","Son.","054","San Javier","0001","San Javier","537","294","243","156" -"26","26","Sonora","Son.","055","San Luis Río Colorado","0001","San Luis Río Colorado","199021","100552","98469","59733" -"26","26","Sonora","Son.","056","San Miguel de Horcasitas","0001","San Miguel de Horcasitas","10729","5607","5122","2787" -"26","26","Sonora","Son.","057","San Pedro de la Cueva","0001","San Pedro de la Cueva","1458","793","665","565" -"26","26","Sonora","Son.","058","Santa Ana","0001","Santa Ana","16203","7989","8214","4936" -"26","26","Sonora","Son.","059","Santa Cruz","0001","Santa Cruz","1835","962","873","558" -"26","26","Sonora","Son.","060","Sáric","0001","Sáric","2058","1079","979","638" -"26","26","Sonora","Son.","061","Soyopa","0001","Soyopa","1368","769","599","478" -"26","26","Sonora","Son.","062","Suaqui Grande","0001","Suaqui Grande","1114","601","513","352" -"26","26","Sonora","Son.","063","Tepache","0001","Tepache","1178","621","557","398" -"26","26","Sonora","Son.","064","Trincheras","0001","Trincheras","1381","739","642","481" -"26","26","Sonora","Son.","065","Tubutama","0001","Tubutama","1473","783","690","487" -"26","26","Sonora","Son.","066","Ures","0001","Heroica Ciudad de Ures","8548","4451","4097","2947" -"26","26","Sonora","Son.","067","Villa Hidalgo","0001","Villa Hidalgo","1429","748","681","494" -"26","26","Sonora","Son.","068","Villa Pesqueira","0001","Villa Pesqueira (Mátape)","1043","592","451","379" -"26","26","Sonora","Son.","069","Yécora","0001","Yécora","4793","2415","2378","1524" -"26","26","Sonora","Son.","070","General Plutarco Elías Calles","0001","Sonoyta","13627","6727","6900","4096" -"26","26","Sonora","Son.","071","Benito Juárez","0001","Villa Juárez","21692","10901","10791","5986" -"26","26","Sonora","Son.","072","San Ignacio Río Muerto","0001","San Ignacio Río Muerto","14279","7342","6937","3925" -"27","27","Tabasco","Tab.","001","Balancán","0001","Balancán","58524","29242","29282","17037" -"27","27","Tabasco","Tab.","002","Cárdenas","0001","Cárdenas","243229","118795","124434","67278" -"27","27","Tabasco","Tab.","003","Centla","0001","Frontera","107731","53114","54617","28480" -"27","27","Tabasco","Tab.","004","Centro","0001","Villahermosa","683607","330080","353527","197683" -"27","27","Tabasco","Tab.","005","Comalcalco","0001","Comalcalco","214877","105283","109594","58320" -"27","27","Tabasco","Tab.","006","Cunduacán","0001","Cunduacán","137257","67272","69985","37604" -"27","27","Tabasco","Tab.","007","Emiliano Zapata","0001","Emiliano Zapata","32181","15453","16728","9518" -"27","27","Tabasco","Tab.","008","Huimanguillo","0001","Huimanguillo","190885","93910","96975","51674" -"27","27","Tabasco","Tab.","009","Jalapa","0001","Jalapa","37749","18879","18870","10573" -"27","27","Tabasco","Tab.","010","Jalpa de Méndez","0001","Jalpa de Méndez","91185","44913","46272","23707" -"27","27","Tabasco","Tab.","011","Jonuta","0001","Jonuta","30798","15454","15344","8674" -"27","27","Tabasco","Tab.","012","Macuspana","0001","Macuspana","158601","77531","81070","43231" -"27","27","Tabasco","Tab.","013","Nacajuca","0001","Nacajuca","150300","72894","77406","42007" -"27","27","Tabasco","Tab.","014","Paraíso","0001","Paraíso","96741","47672","49069","26545" -"27","27","Tabasco","Tab.","015","Tacotalpa","0001","Tacotalpa","47905","23754","24151","12769" -"27","27","Tabasco","Tab.","016","Teapa","0001","Teapa","58718","28764","29954","16168" -"27","27","Tabasco","Tab.","017","Tenosique","0001","Tenosique de Pino Suárez","62310","30661","31649","18146" -"28","28","Tamaulipas","Tamps.","001","Abasolo","0001","Abasolo","9822","4898","4924","3085" -"28","28","Tamaulipas","Tamps.","002","Aldama","0001","Aldama","28725","14347","14378","9165" -"28","28","Tamaulipas","Tamps.","003","Altamira","0001","Altamira","269790","133306","136484","80914" -"28","28","Tamaulipas","Tamps.","004","Antiguo Morelos","0001","Antiguo Morelos","8850","4387","4463","2785" -"28","28","Tamaulipas","Tamps.","005","Burgos","0001","Burgos","4256","2201","2055","1420" -"28","28","Tamaulipas","Tamps.","006","Bustamante","0001","Bustamante","7542","3853","3689","1877" -"28","28","Tamaulipas","Tamps.","007","Camargo","0001","Ciudad Camargo","16546","8620","7926","6369" -"28","28","Tamaulipas","Tamps.","008","Casas","0001","Casas","4143","2178","1965","1204" -"28","28","Tamaulipas","Tamps.","009","Ciudad Madero","0001","Ciudad Madero","205933","98248","107685","65658" -"28","28","Tamaulipas","Tamps.","010","Cruillas","0001","Cruillas","1671","826","845","569" -"28","28","Tamaulipas","Tamps.","011","Gómez Farías","0036","Gómez Farías","8288","4230","4058","2607" -"28","28","Tamaulipas","Tamps.","012","González","0001","González","41470","20368","21102","12334" -"28","28","Tamaulipas","Tamps.","013","Güémez","0001","Güémez","15032","7762","7270","4579" -"28","28","Tamaulipas","Tamps.","014","Guerrero","0001","Nueva Ciudad Guerrero","3803","2115","1688","1912" -"28","28","Tamaulipas","Tamps.","015","Gustavo Díaz Ordaz","0001","Ciudad Gustavo Díaz Ordaz","15677","7866","7811","4932" -"28","28","Tamaulipas","Tamps.","016","Hidalgo","0001","Hidalgo","17012","8689","8323","5488" -"28","28","Tamaulipas","Tamps.","017","Jaumave","0001","Jaumave","15994","7992","8002","4400" -"28","28","Tamaulipas","Tamps.","018","Jiménez","0001","Santander Jiménez","6375","3171","3204","2002" -"28","28","Tamaulipas","Tamps.","019","Llera","0001","Llera de Canales","14645","7468","7177","4745" -"28","28","Tamaulipas","Tamps.","020","Mainero","0001","Villa Mainero","2048","1021","1027","690" -"28","28","Tamaulipas","Tamps.","021","El Mante","0001","Ciudad Mante","106144","50919","55225","34655" -"28","28","Tamaulipas","Tamps.","022","Matamoros","0001","Heroica Matamoros","541979","267898","274081","159609" -"28","28","Tamaulipas","Tamps.","023","Méndez","0001","Méndez","4280","2142","2138","1400" -"28","28","Tamaulipas","Tamps.","024","Mier","0001","Mier","6385","3383","3002","2983" -"28","28","Tamaulipas","Tamps.","025","Miguel Alemán","0001","Ciudad Miguel Alemán","26237","13625","12612","11567" -"28","28","Tamaulipas","Tamps.","026","Miquihuana","0001","Miquihuana","3704","1912","1792","1006" -"28","28","Tamaulipas","Tamps.","027","Nuevo Laredo","0001","Nuevo Laredo","425058","209442","215616","120335" -"28","28","Tamaulipas","Tamps.","028","Nuevo Morelos","0001","Nuevo Morelos","3810","1977","1833","1134" -"28","28","Tamaulipas","Tamps.","029","Ocampo","0001","Ocampo","13190","6730","6460","4003" -"28","28","Tamaulipas","Tamps.","030","Padilla","0001","Nueva Villa de Padilla","13618","6851","6767","4120" -"28","28","Tamaulipas","Tamps.","031","Palmillas","0001","Palmillas","1917","961","956","597" -"28","28","Tamaulipas","Tamps.","032","Reynosa","0001","Reynosa","704767","350361","354406","216245" -"28","28","Tamaulipas","Tamps.","033","Río Bravo","0001","Ciudad Río Bravo","132484","66121","66363","38910" -"28","28","Tamaulipas","Tamps.","034","San Carlos","0001","San Carlos","7411","3855","3556","2365" -"28","28","Tamaulipas","Tamps.","035","San Fernando","0001","San Fernando","51405","25712","25693","15533" -"28","28","Tamaulipas","Tamps.","036","San Nicolás","0001","San Nicolás","926","494","432","279" -"28","28","Tamaulipas","Tamps.","037","Soto la Marina","0001","Soto la Marina","23673","12103","11570","7718" -"28","28","Tamaulipas","Tamps.","038","Tampico","0001","Tampico","297562","141757","155805","93870" -"28","28","Tamaulipas","Tamps.","039","Tula","0001","Ciudad Tula","28230","14010","14220","7777" -"28","28","Tamaulipas","Tamps.","040","Valle Hermoso","0001","Valle Hermoso","60055","29442","30613","18130" -"28","28","Tamaulipas","Tamps.","041","Victoria","0001","Ciudad Victoria","349688","169229","180459","101678" -"28","28","Tamaulipas","Tamps.","042","Villagrán","0001","Villagrán","5361","2735","2626","1685" -"28","28","Tamaulipas","Tamps.","043","Xicoténcatl","0001","Xicoténcatl","22229","10935","11294","7046" -"29","29","Tlaxcala","Tlax.","001","Amaxac de Guerrero","0001","Amaxac de Guerrero","11403","5554","5849","3010" -"29","29","Tlaxcala","Tlax.","002","Apetatitlán de Antonio Carvajal","0001","Apetatitlán","16003","7745","8258","4234" -"29","29","Tlaxcala","Tlax.","003","Atlangatepec","0001","Atlangatepec","7087","3458","3629","1908" -"29","29","Tlaxcala","Tlax.","004","Atltzayanca","0001","Atlzayanca","18111","8943","9168","4536" -"29","29","Tlaxcala","Tlax.","005","Apizaco","0001","Ciudad de Apizaco","80725","38467","42258","22607" -"29","29","Tlaxcala","Tlax.","006","Calpulalpan","0001","Heroica Ciudad de Calpulalpan","51172","24616","26556","12870" -"29","29","Tlaxcala","Tlax.","007","El Carmen Tequexquitla","0001","Villa de El Carmen Tequexquitla","17332","8405","8927","4163" -"29","29","Tlaxcala","Tlax.","008","Cuapiaxtla","0001","Cuapiaxtla","16222","7972","8250","3875" -"29","29","Tlaxcala","Tlax.","009","Cuaxomulco","0001","Cuaxomulco","5928","2902","3026","1521" -"29","29","Tlaxcala","Tlax.","010","Chiautempan","0001","Santa Ana Chiautempan","73215","35251","37964","18706" -"29","29","Tlaxcala","Tlax.","011","Muñoz de Domingo Arenas","0001","Muñoz","4755","2291","2464","1242" -"29","29","Tlaxcala","Tlax.","012","Españita","0001","Españita","9416","4586","4830","2446" -"29","29","Tlaxcala","Tlax.","013","Huamantla","0001","Huamantla","98764","47761","51003","23998" -"29","29","Tlaxcala","Tlax.","014","Hueyotlipan","0001","Hueyotlipan","15190","7426","7764","3861" -"29","29","Tlaxcala","Tlax.","015","Ixtacuixtla de Mariano Matamoros","0001","Villa Mariano Matamoros","38970","18916","20054","10170" -"29","29","Tlaxcala","Tlax.","016","Ixtenco","0001","Ixtenco","7504","3622","3882","1970" -"29","29","Tlaxcala","Tlax.","017","Mazatecochco de José María Morelos","0001","Mazatecochco","11592","5819","5773","2519" -"29","29","Tlaxcala","Tlax.","018","Contla de Juan Cuamatzi","0001","Contla","38579","18792","19787","9297" -"29","29","Tlaxcala","Tlax.","019","Tepetitla de Lardizábal","0001","Tepetitla","22274","10699","11575","5695" -"29","29","Tlaxcala","Tlax.","020","Sanctórum de Lázaro Cárdenas","0001","Sanctórum","9432","4583","4849","2385" -"29","29","Tlaxcala","Tlax.","021","Nanacamilpa de Mariano Arista","0001","Ciudad de Nanacamilpa","18686","9062","9624","4795" -"29","29","Tlaxcala","Tlax.","022","Acuamanala de Miguel Hidalgo","0001","Acuamanala","6432","3184","3248","1515" -"29","29","Tlaxcala","Tlax.","023","Natívitas","0001","Natívitas","26309","12725","13584","6420" -"29","29","Tlaxcala","Tlax.","024","Panotla","0001","Panotla","28357","13419","14938","7680" -"29","29","Tlaxcala","Tlax.","025","San Pablo del Monte","0001","Ciudad de San Pablo del Monte","82688","40802","41886","18316" -"29","29","Tlaxcala","Tlax.","026","Santa Cruz Tlaxcala","0001","Santa Cruz Tlaxcala","24116","11602","12514","6542" -"29","29","Tlaxcala","Tlax.","027","Tenancingo","0001","Tenancingo","12974","6310","6664","2910" -"29","29","Tlaxcala","Tlax.","028","Teolocholco","0001","Teolocholco","25257","12376","12881","5783" -"29","29","Tlaxcala","Tlax.","029","Tepeyanco","0001","Tepeyanco","13328","6358","6970","3254" -"29","29","Tlaxcala","Tlax.","030","Terrenate","0001","Terrenate","15475","7684","7791","3774" -"29","29","Tlaxcala","Tlax.","031","Tetla de la Solidaridad","0001","Tetla","35284","17253","18031","9514" -"29","29","Tlaxcala","Tlax.","032","Tetlatlahuca","0001","Tetlatlahuca","13561","6521","7040","3362" -"29","29","Tlaxcala","Tlax.","033","Tlaxcala","0001","Tlaxcala de Xicohténcatl","99896","47252","52644","28873" -"29","29","Tlaxcala","Tlax.","034","Tlaxco","0001","Tlaxco","45438","22077","23361","11842" -"29","29","Tlaxcala","Tlax.","035","Tocatlán","0001","Tocatlán","6294","3119","3175","1464" -"29","29","Tlaxcala","Tlax.","036","Totolac","0001","San Juan Totolac","22529","10728","11801","5921" -"29","29","Tlaxcala","Tlax.","037","Ziltlaltépec de Trinidad Sánchez Santos","0001","Zitlaltépec","9207","4439","4768","2235" -"29","29","Tlaxcala","Tlax.","038","Tzompantepec","0001","Tzompantepec","18006","8736","9270","5079" -"29","29","Tlaxcala","Tlax.","039","Xaloztoc","0001","Xaloztoc","25607","12746","12861","5994" -"29","29","Tlaxcala","Tlax.","040","Xaltocan","0001","Xaltocan","10601","5013","5588","2961" -"29","29","Tlaxcala","Tlax.","041","Papalotla de Xicohténcatl","0001","Papalotla","33499","16182","17317","8350" -"29","29","Tlaxcala","Tlax.","042","Xicohtzinco","0001","Xicohtzinco","14197","6762","7435","3634" -"29","29","Tlaxcala","Tlax.","043","Yauhquemehcan","0001","San Dionisio Yauhquemehcan","42242","20388","21854","12050" -"29","29","Tlaxcala","Tlax.","044","Zacatelco","0001","Zacatelco","45717","21940","23777","11368" -"29","29","Tlaxcala","Tlax.","045","Benito Juárez","0001","Benito Juárez","6211","2963","3248","1541" -"29","29","Tlaxcala","Tlax.","046","Emiliano Zapata","0001","Emiliano Zapata","4951","2427","2524","1240" -"29","29","Tlaxcala","Tlax.","047","Lázaro Cárdenas","0001","Lázaro Cárdenas","3534","1735","1799","910" -"29","29","Tlaxcala","Tlax.","048","La Magdalena Tlaltelulco","0001","La Magdalena Tlaltelulco","19036","9440","9596","4614" -"29","29","Tlaxcala","Tlax.","049","San Damián Texóloc","0001","San Damián Texóloc","5884","2922","2962","1479" -"29","29","Tlaxcala","Tlax.","050","San Francisco Tetlanohcan","0001","San Francisco Tetlanohcan","11761","5642","6119","2747" -"29","29","Tlaxcala","Tlax.","051","San Jerónimo Zacualpan","0001","San Jerónimo Zacualpan","4092","1940","2152","1038" -"29","29","Tlaxcala","Tlax.","052","San José Teacalco","0001","San José Teacalco","6436","3157","3279","1399" -"29","29","Tlaxcala","Tlax.","053","San Juan Huactzinco","0001","San Juan Huactzinco","7688","3677","4011","1714" -"29","29","Tlaxcala","Tlax.","054","San Lorenzo Axocomanitla","0001","San Lorenzo Axocomanitla","5689","2767","2922","1332" -"29","29","Tlaxcala","Tlax.","055","San Lucas Tecopilco","0001","San Lucas Tecopilco","3077","1541","1536","786" -"29","29","Tlaxcala","Tlax.","056","Santa Ana Nopalucan","0001","Santa Ana Nopalucan","7952","3900","4052","1888" -"29","29","Tlaxcala","Tlax.","057","Santa Apolonia Teacalco","0001","Santa Apolonia Teacalco","4636","2244","2392","1136" -"29","29","Tlaxcala","Tlax.","058","Santa Catarina Ayometla","0001","Santa Catarina Ayometla","9463","4567","4896","2220" -"29","29","Tlaxcala","Tlax.","059","Santa Cruz Quilehtla","0001","Santa Cruz Quilehtla","7750","3829","3921","1722" -"29","29","Tlaxcala","Tlax.","060","Santa Isabel Xiloxoxtla","0001","Santa Isabel Xiloxoxtla","5443","2657","2786","1241" -"30","30","Veracruz de Ignacio de la Llave","Ver.","001","Acajete","0001","Acajete","9701","4920","4781","2630" -"30","30","Veracruz de Ignacio de la Llave","Ver.","002","Acatlán","0001","Acatlán","3441","1666","1775","863" -"30","30","Veracruz de Ignacio de la Llave","Ver.","003","Acayucan","0001","Acayucan","80815","38517","42298","23832" -"30","30","Veracruz de Ignacio de la Llave","Ver.","004","Actopan","0001","Actopan","41742","20610","21132","13456" -"30","30","Veracruz de Ignacio de la Llave","Ver.","005","Acula","0001","Acula","5253","2670","2583","1704" -"30","30","Veracruz de Ignacio de la Llave","Ver.","006","Acultzingo","0001","Acultzingo","23100","11178","11922","5991" -"30","30","Veracruz de Ignacio de la Llave","Ver.","007","Camarón de Tejeda","0001","Camarón de Tejeda","6538","3195","3343","1930" -"30","30","Veracruz de Ignacio de la Llave","Ver.","008","Alpatláhuac","0001","Alpatláhuac","10338","5034","5304","2514" -"30","30","Veracruz de Ignacio de la Llave","Ver.","009","Alto Lucero de Gutiérrez Barrios","0001","Alto Lucero","28184","14006","14178","8830" -"30","30","Veracruz de Ignacio de la Llave","Ver.","010","Altotonga","0001","Altotonga","64234","30527","33707","16708" -"30","30","Veracruz de Ignacio de la Llave","Ver.","011","Alvarado","0001","Alvarado","57035","27938","29097","18446" -"30","30","Veracruz de Ignacio de la Llave","Ver.","012","Amatitlán","0001","Amatitlán","7866","3848","4018","2732" -"30","30","Veracruz de Ignacio de la Llave","Ver.","013","Naranjos Amatlán","0001","Naranjos","26843","12669","14174","8369" -"30","30","Veracruz de Ignacio de la Llave","Ver.","014","Amatlán de los Reyes","0001","Amatlán de los Reyes","46955","22774","24181","13305" -"30","30","Veracruz de Ignacio de la Llave","Ver.","015","Angel R. Cabada","0001","Ángel R. Cabada","33839","16514","17325","10876" -"30","30","Veracruz de Ignacio de la Llave","Ver.","016","La Antigua","0001","José Cardel","28682","13737","14945","9177" -"30","30","Veracruz de Ignacio de la Llave","Ver.","017","Apazapan","0001","Apazapan","4709","2363","2346","1520" -"30","30","Veracruz de Ignacio de la Llave","Ver.","018","Aquila","0001","Aquila","1978","929","1049","486" -"30","30","Veracruz de Ignacio de la Llave","Ver.","019","Astacinga","0001","Astacinga","6909","3201","3708","1694" -"30","30","Veracruz de Ignacio de la Llave","Ver.","020","Atlahuilco","0001","Atlahuilco","11577","5594","5983","2955" -"30","30","Veracruz de Ignacio de la Llave","Ver.","021","Atoyac","0001","Atoyac","23461","11351","12110","7094" -"30","30","Veracruz de Ignacio de la Llave","Ver.","022","Atzacan","0001","Atzacan","22651","11125","11526","5631" -"30","30","Veracruz de Ignacio de la Llave","Ver.","023","Atzalan","0001","Atzalan","49180","24379","24801","14103" -"30","30","Veracruz de Ignacio de la Llave","Ver.","024","Tlaltetela","0001","Tlaltetela","16485","8318","8167","4274" -"30","30","Veracruz de Ignacio de la Llave","Ver.","025","Ayahualulco","0001","Ayahualulco","27217","13238","13979","6424" -"30","30","Veracruz de Ignacio de la Llave","Ver.","026","Banderilla","0001","Banderilla","25993","12221","13772","7609" -"30","30","Veracruz de Ignacio de la Llave","Ver.","027","Benito Juárez","0001","Benito Juárez","16120","7788","8332","4384" -"30","30","Veracruz de Ignacio de la Llave","Ver.","028","Boca del Río","0001","Boca del Río","144550","67985","76565","47818" -"30","30","Veracruz de Ignacio de la Llave","Ver.","029","Calcahualco","0001","Calcahualco","13701","6762","6939","3095" -"30","30","Veracruz de Ignacio de la Llave","Ver.","030","Camerino Z. Mendoza","0001","Ciudad Mendoza","41835","19687","22148","11735" -"30","30","Veracruz de Ignacio de la Llave","Ver.","031","Carrillo Puerto","0001","Tamarindo","18888","9337","9551","5048" -"30","30","Veracruz de Ignacio de la Llave","Ver.","032","Catemaco","0001","Catemaco","49451","23599","25852","13747" -"30","30","Veracruz de Ignacio de la Llave","Ver.","033","Cazones de Herrera","0001","Cazones de Herrera","24421","11846","12575","7043" -"30","30","Veracruz de Ignacio de la Llave","Ver.","034","Cerro Azul","0001","Cerro Azul","25011","11598","13413","7804" -"30","30","Veracruz de Ignacio de la Llave","Ver.","035","Citlaltépetl","0001","Citlaltépec","11165","5478","5687","3356" -"30","30","Veracruz de Ignacio de la Llave","Ver.","036","Coacoatzintla","0001","Coacoatzintla","11018","5329","5689","2873" -"30","30","Veracruz de Ignacio de la Llave","Ver.","037","Coahuitlán","0001","Progreso de Zaragoza","8176","3990","4186","1973" -"30","30","Veracruz de Ignacio de la Llave","Ver.","038","Coatepec","0001","Coatepec","93911","45096","48815","27374" -"30","30","Veracruz de Ignacio de la Llave","Ver.","039","Coatzacoalcos","0001","Coatzacoalcos","310698","149139","161559","98227" -"30","30","Veracruz de Ignacio de la Llave","Ver.","040","Coatzintla","0001","Coatzintla","55016","26292","28724","16159" -"30","30","Veracruz de Ignacio de la Llave","Ver.","041","Coetzala","0001","Coetzala","2355","1156","1199","641" -"30","30","Veracruz de Ignacio de la Llave","Ver.","042","Colipa","0001","Colipa","5743","2844","2899","1847" -"30","30","Veracruz de Ignacio de la Llave","Ver.","043","Comapa","0001","Comapa","19876","9975","9901","5362" -"30","30","Veracruz de Ignacio de la Llave","Ver.","044","Córdoba","0001","Córdoba","204721","95960","108761","61960" -"30","30","Veracruz de Ignacio de la Llave","Ver.","045","Cosamaloapan de Carpio","0001","Cosamaloapan","54737","25879","28858","18415" -"30","30","Veracruz de Ignacio de la Llave","Ver.","046","Cosautlán de Carvajal","0001","Cosautlán de Carvajal","16167","7980","8187","4457" -"30","30","Veracruz de Ignacio de la Llave","Ver.","047","Coscomatepec","0001","Coscomatepec de Bravo","59471","28715","30756","14328" -"30","30","Veracruz de Ignacio de la Llave","Ver.","048","Cosoleacaque","0001","Cosoleacaque","130903","62157","68746","40694" -"30","30","Veracruz de Ignacio de la Llave","Ver.","049","Cotaxtla","0001","Cotaxtla","22050","10868","11182","6558" -"30","30","Veracruz de Ignacio de la Llave","Ver.","050","Coxquihui","0001","Coxquihui","16333","7902","8431","4027" -"30","30","Veracruz de Ignacio de la Llave","Ver.","051","Coyutla","0001","Coyutla","23096","11141","11955","6060" -"30","30","Veracruz de Ignacio de la Llave","Ver.","052","Cuichapa","0001","Cuichapa","11869","5645","6224","3393" -"30","30","Veracruz de Ignacio de la Llave","Ver.","053","Cuitláhuac","0001","Cuitláhuac","28075","13510","14565","8055" -"30","30","Veracruz de Ignacio de la Llave","Ver.","054","Chacaltianguis","0001","Chacaltianguis","11461","5574","5887","3998" -"30","30","Veracruz de Ignacio de la Llave","Ver.","055","Chalma","0001","Chalma","13527","6521","7006","3822" -"30","30","Veracruz de Ignacio de la Llave","Ver.","056","Chiconamel","0001","Chiconamel","6610","3143","3467","1730" -"30","30","Veracruz de Ignacio de la Llave","Ver.","057","Chiconquiaco","0001","Chiconquiaco","13881","6930","6951","3340" -"30","30","Veracruz de Ignacio de la Llave","Ver.","058","Chicontepec","0001","Chicontepec de Tejeda","53858","26214","27644","15207" -"30","30","Veracruz de Ignacio de la Llave","Ver.","059","Chinameca","0001","Chinameca","22638","10930","11708","7092" -"30","30","Veracruz de Ignacio de la Llave","Ver.","060","Chinampa de Gorostiza","0001","Chinampa de Gorostiza","16283","7927","8356","4670" -"30","30","Veracruz de Ignacio de la Llave","Ver.","061","Las Choapas","0001","Las Choapas","81080","39349","41731","22434" -"30","30","Veracruz de Ignacio de la Llave","Ver.","062","Chocamán","0001","Chocamán","20839","10278","10561","5207" -"30","30","Veracruz de Ignacio de la Llave","Ver.","063","Chontla","0001","Chontla","13359","6526","6833","4138" -"30","30","Veracruz de Ignacio de la Llave","Ver.","064","Chumatlán","0001","Chumatlán","4008","1894","2114","1112" -"30","30","Veracruz de Ignacio de la Llave","Ver.","065","Emiliano Zapata","0001","Dos Ríos","85489","41162","44327","27261" -"30","30","Veracruz de Ignacio de la Llave","Ver.","066","Espinal","0001","Espinal","26830","13021","13809","7346" -"30","30","Veracruz de Ignacio de la Llave","Ver.","067","Filomeno Mata","0001","Filomeno Mata","19179","9294","9885","3638" -"30","30","Veracruz de Ignacio de la Llave","Ver.","068","Fortín","0001","Fortín de las Flores","66372","31242","35130","19979" -"30","30","Veracruz de Ignacio de la Llave","Ver.","069","Gutiérrez Zamora","0001","Gutiérrez Zamora","24085","11188","12897","7682" -"30","30","Veracruz de Ignacio de la Llave","Ver.","070","Hidalgotitlán","0001","Hidalgotitlán","18275","9148","9127","5308" -"30","30","Veracruz de Ignacio de la Llave","Ver.","071","Huatusco","0001","Huatusco de Chicuellar","59920","28610","31310","16101" -"30","30","Veracruz de Ignacio de la Llave","Ver.","072","Huayacocotla","0001","Huayacocotla","21796","10467","11329","6137" -"30","30","Veracruz de Ignacio de la Llave","Ver.","073","Hueyapan de Ocampo","0001","Hueyapan de Ocampo","41670","20201","21469","12652" -"30","30","Veracruz de Ignacio de la Llave","Ver.","074","Huiloapan de Cuauhtémoc","0001","Huiloapan de Cuauhtémoc","7293","3457","3836","2018" -"30","30","Veracruz de Ignacio de la Llave","Ver.","075","Ignacio de la Llave","0001","Ignacio de la Llave","16525","7959","8566","5663" -"30","30","Veracruz de Ignacio de la Llave","Ver.","076","Ilamatlán","0001","Ilamatlán","13377","6350","7027","3713" -"30","30","Veracruz de Ignacio de la Llave","Ver.","077","Isla","0001","Isla","42807","20715","22092","13269" -"30","30","Veracruz de Ignacio de la Llave","Ver.","078","Ixcatepec","0001","Ixcatepec","12379","6080","6299","3745" -"30","30","Veracruz de Ignacio de la Llave","Ver.","079","Ixhuacán de los Reyes","0001","Ixhuacán de los Reyes","11387","5617","5770","3072" -"30","30","Veracruz de Ignacio de la Llave","Ver.","080","Ixhuatlán del Café","0001","Ixhuatlán del Café","23132","11460","11672","5964" -"30","30","Veracruz de Ignacio de la Llave","Ver.","081","Ixhuatlancillo","0001","Ixhuatlancillo","27295","12909","14386","7851" -"30","30","Veracruz de Ignacio de la Llave","Ver.","082","Ixhuatlán del Sureste","0001","Ixhuatlán del Sureste","15831","7768","8063","4782" -"30","30","Veracruz de Ignacio de la Llave","Ver.","083","Ixhuatlán de Madero","0001","Ixhuatlán de Madero","50836","24723","26113","14058" -"30","30","Veracruz de Ignacio de la Llave","Ver.","084","Ixmatlahuacan","0001","Ixmatlahuacan","5574","2712","2862","1924" -"30","30","Veracruz de Ignacio de la Llave","Ver.","085","Ixtaczoquitlán","0001","Ixtaczoquitlán","74004","35363","38641","20868" -"30","30","Veracruz de Ignacio de la Llave","Ver.","086","Jalacingo","0001","Jalacingo","46794","22644","24150","11593" -"30","30","Veracruz de Ignacio de la Llave","Ver.","087","Xalapa","0001","Xalapa-Enríquez","488531","226821","261710","151306" -"30","30","Veracruz de Ignacio de la Llave","Ver.","088","Jalcomulco","0001","Jalcomulco","5054","2537","2517","1632" -"30","30","Veracruz de Ignacio de la Llave","Ver.","089","Jáltipan","0001","Jáltipan de Morelos","38669","18192","20477","12270" -"30","30","Veracruz de Ignacio de la Llave","Ver.","090","Jamapa","0001","Jamapa","11132","5420","5712","3617" -"30","30","Veracruz de Ignacio de la Llave","Ver.","091","Jesús Carranza","0001","Jesús Carranza","28524","14079","14445","8206" -"30","30","Veracruz de Ignacio de la Llave","Ver.","092","Xico","0001","Xico","39623","19253","20370","10250" -"30","30","Veracruz de Ignacio de la Llave","Ver.","093","Jilotepec","0001","Jilotepec","16585","8015","8570","4637" -"30","30","Veracruz de Ignacio de la Llave","Ver.","094","Juan Rodríguez Clara","0001","Juan Rodríguez Clara","38367","18690","19677","11743" -"30","30","Veracruz de Ignacio de la Llave","Ver.","095","Juchique de Ferrer","0001","Juchique de Ferrer","15059","7478","7581","4694" -"30","30","Veracruz de Ignacio de la Llave","Ver.","096","Landero y Coss","0001","Landero y Coss","1543","756","787","425" -"30","30","Veracruz de Ignacio de la Llave","Ver.","097","Lerdo de Tejada","0001","Lerdo de Tejada","19123","8984","10139","6585" -"30","30","Veracruz de Ignacio de la Llave","Ver.","098","Magdalena","0001","Magdalena","3299","1591","1708","856" -"30","30","Veracruz de Ignacio de la Llave","Ver.","099","Maltrata","0001","Maltrata","18327","8778","9549","4504" -"30","30","Veracruz de Ignacio de la Llave","Ver.","100","Manlio Fabio Altamirano","0001","Manlio Fabio Altamirano","23918","11737","12181","7630" -"30","30","Veracruz de Ignacio de la Llave","Ver.","101","Mariano Escobedo","0001","Mariano Escobedo","38670","18520","20150","10300" -"30","30","Veracruz de Ignacio de la Llave","Ver.","102","Martínez de la Torre","0001","Martínez de la Torre","108842","52176","56666","32755" -"30","30","Veracruz de Ignacio de la Llave","Ver.","103","Mecatlán","0001","Mecatlán","12799","6296","6503","3136" -"30","30","Veracruz de Ignacio de la Llave","Ver.","104","Mecayapan","0001","Mecayapan","17134","8228","8906","5002" -"30","30","Veracruz de Ignacio de la Llave","Ver.","105","Medellín de Bravo","0001","Medellín","95202","45685","49517","33236" -"30","30","Veracruz de Ignacio de la Llave","Ver.","106","Miahuatlán","0001","Miahuatlán","4841","2406","2435","1203" -"30","30","Veracruz de Ignacio de la Llave","Ver.","107","Las Minas","0001","Las Minas","2934","1453","1481","720" -"30","30","Veracruz de Ignacio de la Llave","Ver.","108","Minatitlán","0001","Minatitlán","144776","68789","75987","44984" -"30","30","Veracruz de Ignacio de la Llave","Ver.","109","Misantla","0001","Misantla","65761","32030","33731","19527" -"30","30","Veracruz de Ignacio de la Llave","Ver.","110","Mixtla de Altamirano","0001","Mixtla de Altamirano","12125","5982","6143","3197" -"30","30","Veracruz de Ignacio de la Llave","Ver.","111","Moloacán","0001","Moloacán","16493","7953","8540","4960" -"30","30","Veracruz de Ignacio de la Llave","Ver.","112","Naolinco","0001","Naolinco de Victoria","22835","11126","11709","6608" -"30","30","Veracruz de Ignacio de la Llave","Ver.","113","Naranjal","0001","Naranjal","4614","2232","2382","1224" -"30","30","Veracruz de Ignacio de la Llave","Ver.","114","Nautla","0001","Nautla","10130","5050","5080","3377" -"30","30","Veracruz de Ignacio de la Llave","Ver.","115","Nogales","0001","Nogales","37314","17775","19539","10712" -"30","30","Veracruz de Ignacio de la Llave","Ver.","116","Oluta","0001","Oluta","17027","8178","8849","5039" -"30","30","Veracruz de Ignacio de la Llave","Ver.","117","Omealca","0001","Omealca","23773","11420","12353","6710" -"30","30","Veracruz de Ignacio de la Llave","Ver.","118","Orizaba","0001","Orizaba","123182","56740","66442","37722" -"30","30","Veracruz de Ignacio de la Llave","Ver.","119","Otatitlán","0001","Otatitlán","5651","2739","2912","1824" -"30","30","Veracruz de Ignacio de la Llave","Ver.","120","Oteapan","0001","Oteapan","10343","4913","5430","3039" -"30","30","Veracruz de Ignacio de la Llave","Ver.","121","Ozuluama de Mascareñas","0001","Ozuluama de Mascareñas","22756","11612","11144","7156" -"30","30","Veracruz de Ignacio de la Llave","Ver.","122","Pajapan","0001","Pajapan","18051","8880","9171","5567" -"30","30","Veracruz de Ignacio de la Llave","Ver.","123","Pánuco","0001","Pánuco","96185","47219","48966","28379" -"30","30","Veracruz de Ignacio de la Llave","Ver.","124","Papantla","0001","Papantla de Olarte","159910","77178","82732","45472" -"30","30","Veracruz de Ignacio de la Llave","Ver.","125","Paso del Macho","0001","Paso del Macho","31894","15617","16277","9130" -"30","30","Veracruz de Ignacio de la Llave","Ver.","126","Paso de Ovejas","0001","Paso de Ovejas","33442","16531","16911","10627" -"30","30","Veracruz de Ignacio de la Llave","Ver.","127","La Perla","0001","La Perla","28258","13717","14541","6348" -"30","30","Veracruz de Ignacio de la Llave","Ver.","128","Perote","0001","Perote","77432","38295","39137","19096" -"30","30","Veracruz de Ignacio de la Llave","Ver.","129","Platón Sánchez","0001","Platón Sánchez","18053","8687","9366","5193" -"30","30","Veracruz de Ignacio de la Llave","Ver.","130","Playa Vicente","0001","Playa Vicente","39327","18844","20483","11598" -"30","30","Veracruz de Ignacio de la Llave","Ver.","131","Poza Rica de Hidalgo","0001","Poza Rica de Hidalgo","189457","88204","101253","56971" -"30","30","Veracruz de Ignacio de la Llave","Ver.","132","Las Vigas de Ramírez","0001","Las Vigas de Ramírez","20300","9962","10338","5070" -"30","30","Veracruz de Ignacio de la Llave","Ver.","133","Pueblo Viejo","0001","Cd. Cuauhtémoc","57909","28756","29153","16522" -"30","30","Veracruz de Ignacio de la Llave","Ver.","134","Puente Nacional","0001","Puente Nacional","23544","11493","12051","7539" -"30","30","Veracruz de Ignacio de la Llave","Ver.","135","Rafael Delgado","0001","Rafael Delgado","24127","11804","12323","6017" -"30","30","Veracruz de Ignacio de la Llave","Ver.","136","Rafael Lucio","0001","Rafael Lucio","8343","4024","4319","2113" -"30","30","Veracruz de Ignacio de la Llave","Ver.","137","Los Reyes","0001","Los Reyes","6308","3097","3211","1641" -"30","30","Veracruz de Ignacio de la Llave","Ver.","138","Río Blanco","0001","Río Blanco","41795","19312","22483","12341" -"30","30","Veracruz de Ignacio de la Llave","Ver.","139","Saltabarranca","0001","Saltabarranca","6126","2952","3174","2057" -"30","30","Veracruz de Ignacio de la Llave","Ver.","140","San Andrés Tenejapan","0001","San Andrés Tenejapan","3134","1520","1614","743" -"30","30","Veracruz de Ignacio de la Llave","Ver.","141","San Andrés Tuxtla","0001","San Andrés Tuxtla","162428","76986","85442","44809" -"30","30","Veracruz de Ignacio de la Llave","Ver.","142","San Juan Evangelista","0001","San Juan Evangelista","32631","15998","16633","9517" -"30","30","Veracruz de Ignacio de la Llave","Ver.","143","Santiago Tuxtla","0001","Santiago Tuxtla","57085","27104","29981","16708" -"30","30","Veracruz de Ignacio de la Llave","Ver.","144","Sayula de Alemán","0001","Sayula de Alemán","32400","15629","16771","8937" -"30","30","Veracruz de Ignacio de la Llave","Ver.","145","Soconusco","0001","Soconusco","16574","7926","8648","5009" -"30","30","Veracruz de Ignacio de la Llave","Ver.","146","Sochiapa","0001","Sochiapa","3925","1956","1969","941" -"30","30","Veracruz de Ignacio de la Llave","Ver.","147","Soledad Atzompa","0001","Soledad Atzompa","24578","12001","12577","5595" -"30","30","Veracruz de Ignacio de la Llave","Ver.","148","Soledad de Doblado","0001","Soledad de Doblado","28130","13872","14258","8505" -"30","30","Veracruz de Ignacio de la Llave","Ver.","149","Soteapan","0001","Soteapan","34385","16531","17854","9365" -"30","30","Veracruz de Ignacio de la Llave","Ver.","150","Tamalín","0001","Tamalín","11631","5821","5810","3524" -"30","30","Veracruz de Ignacio de la Llave","Ver.","151","Tamiahua","0001","Tamiahua","21902","10992","10910","7430" -"30","30","Veracruz de Ignacio de la Llave","Ver.","152","Tampico Alto","0001","Tampico Alto","11561","5927","5634","3820" -"30","30","Veracruz de Ignacio de la Llave","Ver.","153","Tancoco","0001","Tancoco","5795","2785","3010","1831" -"30","30","Veracruz de Ignacio de la Llave","Ver.","154","Tantima","0001","Tantima","11991","6075","5916","3688" -"30","30","Veracruz de Ignacio de la Llave","Ver.","155","Tantoyuca","0001","Tantoyuca","99959","48133","51826","27314" -"30","30","Veracruz de Ignacio de la Llave","Ver.","156","Tatatila","0001","Tatatila","6041","3091","2950","1472" -"30","30","Veracruz de Ignacio de la Llave","Ver.","157","Castillo de Teayo","0001","Castillo de Teayo","20145","9936","10209","5623" -"30","30","Veracruz de Ignacio de la Llave","Ver.","158","Tecolutla","0001","Tecolutla","24551","12102","12449","7579" -"30","30","Veracruz de Ignacio de la Llave","Ver.","159","Tehuipango","0001","Tehuipango","29686","14225","15461","5694" -"30","30","Veracruz de Ignacio de la Llave","Ver.","160","Álamo Temapache","0001","Álamo","107270","52748","54522","30024" -"30","30","Veracruz de Ignacio de la Llave","Ver.","161","Tempoal","0001","Tempoal de Sánchez","34408","16866","17542","10053" -"30","30","Veracruz de Ignacio de la Llave","Ver.","162","Tenampa","0001","Tenampa","6448","3225","3223","1704" -"30","30","Veracruz de Ignacio de la Llave","Ver.","163","Tenochtitlán","0001","Tenochtitlán","5040","2482","2558","1298" -"30","30","Veracruz de Ignacio de la Llave","Ver.","164","Teocelo","0001","Teocelo","16957","8217","8740","4903" -"30","30","Veracruz de Ignacio de la Llave","Ver.","165","Tepatlaxco","0001","Tepatlaxco","8925","4530","4395","2373" -"30","30","Veracruz de Ignacio de la Llave","Ver.","166","Tepetlán","0001","Tepetlán","9405","4807","4598","2797" -"30","30","Veracruz de Ignacio de la Llave","Ver.","167","Tepetzintla","0001","Tepetzintla","14619","7196","7423","4216" -"30","30","Veracruz de Ignacio de la Llave","Ver.","168","Tequila","0001","Tequila","16343","8066","8277","4105" -"30","30","Veracruz de Ignacio de la Llave","Ver.","169","José Azueta","0001","Villa Azueta","22709","11136","11573","7302" -"30","30","Veracruz de Ignacio de la Llave","Ver.","170","Texcatepec","0001","Texcatepec","10824","5274","5550","2846" -"30","30","Veracruz de Ignacio de la Llave","Ver.","171","Texhuacán","0001","Texhuacán","5575","2644","2931","1451" -"30","30","Veracruz de Ignacio de la Llave","Ver.","172","Texistepec","0001","Texistepec","19925","9801","10124","5763" -"30","30","Veracruz de Ignacio de la Llave","Ver.","173","Tezonapa","0001","Tezonapa","54537","26811","27726","15420" -"30","30","Veracruz de Ignacio de la Llave","Ver.","174","Tierra Blanca","0001","Tierra Blanca","95602","45759","49843","30821" -"30","30","Veracruz de Ignacio de la Llave","Ver.","175","Tihuatlán","0001","Tihuatlán","92726","44657","48069","26206" -"30","30","Veracruz de Ignacio de la Llave","Ver.","176","Tlacojalpan","0001","Tlacojalpan","4489","2219","2270","1472" -"30","30","Veracruz de Ignacio de la Llave","Ver.","177","Tlacolulan","0001","Tlacolulan","11685","5751","5934","2821" -"30","30","Veracruz de Ignacio de la Llave","Ver.","178","Tlacotalpan","0001","Tlacotalpan","12898","6223","6675","4424" -"30","30","Veracruz de Ignacio de la Llave","Ver.","179","Tlacotepec de Mejía","0001","Tlacotepec de Mejía","4284","2130","2154","1218" -"30","30","Veracruz de Ignacio de la Llave","Ver.","180","Tlachichilco","0001","Tlachichilco","10900","5307","5593","3041" -"30","30","Veracruz de Ignacio de la Llave","Ver.","181","Tlalixcoyan","0001","Tlalixcoyan","37795","18380","19415","12540" -"30","30","Veracruz de Ignacio de la Llave","Ver.","182","Tlalnelhuayocan","0001","Tlalnelhuayocan","19664","9585","10079","4996" -"30","30","Veracruz de Ignacio de la Llave","Ver.","183","Tlapacoyan","0001","Tlapacoyan","61377","29598","31779","17510" -"30","30","Veracruz de Ignacio de la Llave","Ver.","184","Tlaquilpa","0001","Tlaquilpa","7933","3711","4222","1897" -"30","30","Veracruz de Ignacio de la Llave","Ver.","185","Tlilapan","0001","Tlilapan","5548","2693","2855","1360" -"30","30","Veracruz de Ignacio de la Llave","Ver.","186","Tomatlán","0001","Tomatlán","7197","3538","3659","2092" -"30","30","Veracruz de Ignacio de la Llave","Ver.","187","Tonayán","0001","Tonayán","6105","2956","3149","1393" -"30","30","Veracruz de Ignacio de la Llave","Ver.","188","Totutla","0001","Totutla","17217","8525","8692","4599" -"30","30","Veracruz de Ignacio de la Llave","Ver.","189","Tuxpan","0001","Túxpam de Rodríguez Cano","154600","74195","80405","46524" -"30","30","Veracruz de Ignacio de la Llave","Ver.","190","Tuxtilla","0001","Tuxtilla","2258","1114","1144","824" -"30","30","Veracruz de Ignacio de la Llave","Ver.","191","Ursulo Galván","0001","Ursulo Galván","30097","14468","15629","9924" -"30","30","Veracruz de Ignacio de la Llave","Ver.","192","Vega de Alatorre","0001","Vega de Alatorre","20204","9772","10432","6549" -"30","30","Veracruz de Ignacio de la Llave","Ver.","193","Veracruz","0001","Veracruz","607209","287664","319545","202144" -"30","30","Veracruz de Ignacio de la Llave","Ver.","194","Villa Aldama","0001","Villa Aldama","12492","6113","6379","2937" -"30","30","Veracruz de Ignacio de la Llave","Ver.","195","Xoxocotla","0001","Xoxocotla","5900","2961","2939","1500" -"30","30","Veracruz de Ignacio de la Llave","Ver.","196","Yanga","0001","Yanga","17902","8425","9477","5533" -"30","30","Veracruz de Ignacio de la Llave","Ver.","197","Yecuatla","0001","Yecuatla","11205","5543","5662","3311" -"30","30","Veracruz de Ignacio de la Llave","Ver.","198","Zacualpan","0001","Zacualpan","6788","3238","3550","1998" -"30","30","Veracruz de Ignacio de la Llave","Ver.","199","Zaragoza","0001","Zaragoza","11899","5637","6262","3166" -"30","30","Veracruz de Ignacio de la Llave","Ver.","200","Zentla","0001","Colonia Manuel González","12581","6288","6293","3487" -"30","30","Veracruz de Ignacio de la Llave","Ver.","201","Zongolica","0001","Zongolica","45028","21765","23263","12241" -"30","30","Veracruz de Ignacio de la Llave","Ver.","202","Zontecomatlán de López y Fuentes","0001","Zontecomatlán de López y Fuentes","14644","7154","7490","3956" -"30","30","Veracruz de Ignacio de la Llave","Ver.","203","Zozocolco de Hidalgo","0001","Zozocolco de Hidalgo","14524","7020","7504","3605" -"30","30","Veracruz de Ignacio de la Llave","Ver.","204","Agua Dulce","0001","Agua Dulce","44104","21064","23040","13725" -"30","30","Veracruz de Ignacio de la Llave","Ver.","205","El Higo","0001","El Higo","19402","9635","9767","5591" -"30","30","Veracruz de Ignacio de la Llave","Ver.","206","Nanchital de Lázaro Cárdenas del Río","0001","Nanchital de Lázaro Cárdenas del Río","29209","13887","15322","8979" -"30","30","Veracruz de Ignacio de la Llave","Ver.","207","Tres Valles","0001","Tres Valles","44978","21699","23279","14169" -"30","30","Veracruz de Ignacio de la Llave","Ver.","208","Carlos A. Carrillo","0001","Carlos A. Carrillo","23376","11090","12286","7833" -"30","30","Veracruz de Ignacio de la Llave","Ver.","209","Tatahuicapan de Juárez","0001","Tatahuicapan","15044","7183","7861","4344" -"30","30","Veracruz de Ignacio de la Llave","Ver.","210","Uxpanapa","0001","Poblado 10","30891","15440","15451","7758" -"30","30","Veracruz de Ignacio de la Llave","Ver.","211","San Rafael","0001","San Rafael","30351","14897","15454","9388" -"30","30","Veracruz de Ignacio de la Llave","Ver.","212","Santiago Sochiapan","0001","Xochiapa","13062","6315","6747","3600" -"31","31","Yucatán","Yuc.","001","Abalá","0001","Abalá","6550","3303","3247","1822" -"31","31","Yucatán","Yuc.","002","Acanceh","0001","Acanceh","16772","8379","8393","4259" -"31","31","Yucatán","Yuc.","003","Akil","0001","Akil","12285","6100","6185","3277" -"31","31","Yucatán","Yuc.","004","Baca","0001","Baca","6195","3043","3152","1752" -"31","31","Yucatán","Yuc.","005","Bokobá","0001","Bokobá","2167","1089","1078","634" -"31","31","Yucatán","Yuc.","006","Buctzotz","0001","Buctzotz","9159","4634","4525","2688" -"31","31","Yucatán","Yuc.","007","Cacalchén","0001","Cacalchén","7490","3769","3721","2051" -"31","31","Yucatán","Yuc.","008","Calotmul","0001","Calotmul","3949","1987","1962","1157" -"31","31","Yucatán","Yuc.","009","Cansahcab","0001","Cansahcab","4466","2188","2278","1315" -"31","31","Yucatán","Yuc.","010","Cantamayec","0001","Cantamayec","2755","1423","1332","746" -"31","31","Yucatán","Yuc.","011","Celestún","0001","Celestún","8389","4235","4154","2370" -"31","31","Yucatán","Yuc.","012","Cenotillo","0001","Cenotillo","3736","1856","1880","1189" -"31","31","Yucatán","Yuc.","013","Conkal","0001","Conkal","16671","8170","8501","4990" -"31","31","Yucatán","Yuc.","014","Cuncunul","0001","Cuncunul","1714","885","829","441" -"31","31","Yucatán","Yuc.","015","Cuzamá","0001","Cuzamá","5560","2821","2739","1513" -"31","31","Yucatán","Yuc.","016","Chacsinkín","0001","Chacsinkín","3104","1588","1516","725" -"31","31","Yucatán","Yuc.","017","Chankom","0001","Chankom","4686","2359","2327","1239" -"31","31","Yucatán","Yuc.","018","Chapab","0001","Chapab","3385","1698","1687","966" -"31","31","Yucatán","Yuc.","019","Chemax","0001","Chemax","38934","19575","19359","8511" -"31","31","Yucatán","Yuc.","020","Chicxulub Pueblo","0001","Chicxulub Pueblo","4497","2279","2218","1312" -"31","31","Yucatán","Yuc.","021","Chichimilá","0001","Chichimilá","9406","4775","4631","2060" -"31","31","Yucatán","Yuc.","022","Chikindzonot","0001","Chikindzonot","4363","2192","2171","1015" -"31","31","Yucatán","Yuc.","023","Chocholá","0001","Chocholá","4863","2490","2373","1456" -"31","31","Yucatán","Yuc.","024","Chumayel","0001","Chumayel","3244","1597","1647","894" -"31","31","Yucatán","Yuc.","025","Dzan","0001","Dzan","6003","2939","3064","1473" -"31","31","Yucatán","Yuc.","026","Dzemul","0001","Dzemul","3622","1797","1825","1091" -"31","31","Yucatán","Yuc.","027","Dzidzantún","0001","Dzidzantún","8345","4211","4134","2495" -"31","31","Yucatán","Yuc.","028","Dzilam de Bravo","0001","Dzilam de Bravo","2936","1474","1462","882" -"31","31","Yucatán","Yuc.","029","Dzilam González","0001","Dzilam González","6240","3173","3067","1922" -"31","31","Yucatán","Yuc.","030","Dzitás","0001","Dzitás","4015","2056","1959","1079" -"31","31","Yucatán","Yuc.","031","Dzoncauich","0001","Dzoncauich","2818","1422","1396","792" -"31","31","Yucatán","Yuc.","032","Espita","0001","Espita","16779","8512","8267","4237" -"31","31","Yucatán","Yuc.","033","Halachó","0001","Halachó","21255","10673","10582","5767" -"31","31","Yucatán","Yuc.","034","Hocabá","0001","Hocabá","6514","3249","3265","1686" -"31","31","Yucatán","Yuc.","035","Hoctún","0001","Hoctún","6384","3174","3210","1836" -"31","31","Yucatán","Yuc.","036","Homún","0001","Homún","8090","4069","4021","2229" -"31","31","Yucatán","Yuc.","037","Huhí","0001","Huhí","5250","2698","2552","1578" -"31","31","Yucatán","Yuc.","038","Hunucmá","0001","Hunucmá","35137","17457","17680","8944" -"31","31","Yucatán","Yuc.","039","Ixil","0001","Ixil","4186","2100","2086","1121" -"31","31","Yucatán","Yuc.","040","Izamal","0001","Izamal","28555","14200","14355","7905" -"31","31","Yucatán","Yuc.","041","Kanasín","0001","Kanasín","141939","70412","71527","40034" -"31","31","Yucatán","Yuc.","042","Kantunil","0001","Kantunil","5553","2730","2823","1561" -"31","31","Yucatán","Yuc.","043","Kaua","0001","Kaua","3405","1724","1681","845" -"31","31","Yucatán","Yuc.","044","Kinchil","0001","Kinchil","7530","3792","3738","2011" -"31","31","Yucatán","Yuc.","045","Kopomá","0001","Kopomá","2677","1387","1290","788" -"31","31","Yucatán","Yuc.","046","Mama","0001","Mama","3296","1615","1681","866" -"31","31","Yucatán","Yuc.","047","Maní","0001","Maní","5968","2944","3024","1555" -"31","31","Yucatán","Yuc.","048","Maxcanú","0001","Maxcanú","23991","12108","11883","6322" -"31","31","Yucatán","Yuc.","049","Mayapán","0001","Mayapán","3965","2069","1896","945" -"31","31","Yucatán","Yuc.","050","Mérida","0001","Mérida","995129","479369","515760","303941" -"31","31","Yucatán","Yuc.","051","Mocochá","0001","Mocochá","3430","1757","1673","1004" -"31","31","Yucatán","Yuc.","052","Motul","0001","Motul de Carrillo Puerto","37804","18677","19127","10134" -"31","31","Yucatán","Yuc.","053","Muna","0001","Muna","13494","6747","6747","3411" -"31","31","Yucatán","Yuc.","054","Muxupip","0001","Muxupip","2990","1459","1531","866" -"31","31","Yucatán","Yuc.","055","Opichén","0001","Opichén","7080","3577","3503","1914" -"31","31","Yucatán","Yuc.","056","Oxkutzcab","0001","Oxkutzcab","33854","16310","17544","8573" -"31","31","Yucatán","Yuc.","057","Panabá","0001","Panabá","7766","3836","3930","2215" -"31","31","Yucatán","Yuc.","058","Peto","0001","Peto","25954","12887","13067","6403" -"31","31","Yucatán","Yuc.","059","Progreso","0001","Progreso","66008","32979","33029","18511" -"31","31","Yucatán","Yuc.","060","Quintana Roo","0001","Quintana Roo","976","480","496","305" -"31","31","Yucatán","Yuc.","061","Río Lagartos","0001","Río Lagartos","3974","2033","1941","1101" -"31","31","Yucatán","Yuc.","062","Sacalum","0001","Sacalum","4962","2560","2402","1374" -"31","31","Yucatán","Yuc.","063","Samahil","0001","Samahil","5631","2835","2796","1443" -"31","31","Yucatán","Yuc.","064","Sanahcat","0001","Sanahcat","1701","858","843","484" -"31","31","Yucatán","Yuc.","065","San Felipe","0001","San Felipe","2118","1089","1029","632" -"31","31","Yucatán","Yuc.","066","Santa Elena","0001","Santa Elena","4220","2102","2118","1124" -"31","31","Yucatán","Yuc.","067","Seyé","0001","Seyé","10053","5129","4924","2698" -"31","31","Yucatán","Yuc.","068","Sinanché","0001","Sinanché","3206","1648","1558","993" -"31","31","Yucatán","Yuc.","069","Sotuta","0001","Sotuta","8967","4582","4385","2398" -"31","31","Yucatán","Yuc.","070","Sucilá","0001","Sucilá","3971","1981","1990","1177" -"31","31","Yucatán","Yuc.","071","Sudzal","0001","Sudzal","1949","999","950","579" -"31","31","Yucatán","Yuc.","072","Suma","0001","Suma","1857","963","894","572" -"31","31","Yucatán","Yuc.","073","Tahdziú","0001","Tahdziú","5854","3009","2845","1278" -"31","31","Yucatán","Yuc.","074","Tahmek","0001","Tahmek","3774","1909","1865","1089" -"31","31","Yucatán","Yuc.","075","Teabo","0001","Teabo","6921","3446","3475","1676" -"31","31","Yucatán","Yuc.","076","Tecoh","0001","Tecoh","17939","9041","8898","4722" -"31","31","Yucatán","Yuc.","077","Tekal de Venegas","0001","Tekal de Venegas","2683","1371","1312","775" -"31","31","Yucatán","Yuc.","078","Tekantó","0001","Tekantó","3747","1884","1863","1082" -"31","31","Yucatán","Yuc.","079","Tekax","0001","Tekax de Álvaro Obregón","45062","22128","22934","11545" -"31","31","Yucatán","Yuc.","080","Tekit","0001","Tekit","11020","5586","5434","2797" -"31","31","Yucatán","Yuc.","081","Tekom","0001","Tekom","3355","1665","1690","801" -"31","31","Yucatán","Yuc.","082","Telchac Pueblo","0001","Telchac","3512","1711","1801","1121" -"31","31","Yucatán","Yuc.","083","Telchac Puerto","0001","Telchac Puerto","1915","953","962","568" -"31","31","Yucatán","Yuc.","084","Temax","0001","Temax","7037","3543","3494","1878" -"31","31","Yucatán","Yuc.","085","Temozón","0001","Temozón","16680","8420","8260","4262" -"31","31","Yucatán","Yuc.","086","Tepakán","0001","Tepakán","2133","1068","1065","682" -"31","31","Yucatán","Yuc.","087","Tetiz","0001","Tetiz","5464","2784","2680","1485" -"31","31","Yucatán","Yuc.","088","Teya","0001","Teya","1917","955","962","570" -"31","31","Yucatán","Yuc.","089","Ticul","0001","Ticul","40495","19937","20558","10082" -"31","31","Yucatán","Yuc.","090","Timucuy","0001","Timucuy","7503","3788","3715","1809" -"31","31","Yucatán","Yuc.","091","Tinum","0001","Tinum","12700","6385","6315","3234" -"31","31","Yucatán","Yuc.","092","Tixcacalcupul","0001","Tixcacalcupul","7888","3939","3949","1938" -"31","31","Yucatán","Yuc.","093","Tixkokob","0001","Tixkokob","18420","9037","9383","5137" -"31","31","Yucatán","Yuc.","094","Tixméhuac","0001","Tixméhuac","5444","2718","2726","1422" -"31","31","Yucatán","Yuc.","095","Tixpéhual","0001","Tixpéhual","5690","2816","2874","1537" -"31","31","Yucatán","Yuc.","096","Tizimín","0001","Tizimín","80672","40054","40618","21283" -"31","31","Yucatán","Yuc.","097","Tunkás","0001","Tunkás","3684","1889","1795","1094" -"31","31","Yucatán","Yuc.","098","Tzucacab","0001","Tzucacab","15346","7669","7677","4006" -"31","31","Yucatán","Yuc.","099","Uayma","0001","Uayma","4191","2091","2100","1008" -"31","31","Yucatán","Yuc.","100","Ucú","0001","Ucú","4049","2015","2034","1139" -"31","31","Yucatán","Yuc.","101","Umán","0001","Umán","69147","34422","34725","19364" -"31","31","Yucatán","Yuc.","102","Valladolid","0001","Valladolid","85460","41925","43535","22083" -"31","31","Yucatán","Yuc.","103","Xocchel","0001","Xocchel","3451","1750","1701","900" -"31","31","Yucatán","Yuc.","104","Yaxcabá","0001","Yaxcabá","16350","8356","7994","4195" -"31","31","Yucatán","Yuc.","105","Yaxkukul","0001","Yaxkukul","3293","1628","1665","908" -"31","31","Yucatán","Yuc.","106","Yobaín","0001","Yobaín","2215","1110","1105","683" -"32","32","Zacatecas","Zac.","001","Apozol","0001","Apozol","6260","3041","3219","1812" -"32","32","Zacatecas","Zac.","002","Apulco","0001","Apulco","4942","2339","2603","1345" -"32","32","Zacatecas","Zac.","003","Atolinga","0001","Atolinga","2277","1131","1146","766" -"32","32","Zacatecas","Zac.","004","Benito Juárez","0001","Florencia","4493","2242","2251","1276" -"32","32","Zacatecas","Zac.","005","Calera","0001","Víctor Rosales","45759","22579","23180","11997" -"32","32","Zacatecas","Zac.","006","Cañitas de Felipe Pescador","0001","Cañitas de Felipe Pescador","8255","4027","4228","2228" -"32","32","Zacatecas","Zac.","007","Concepción del Oro","0001","Concepción del Oro","12115","6065","6050","3251" -"32","32","Zacatecas","Zac.","008","Cuauhtémoc","0001","San Pedro Piedra Gorda","13466","6548","6918","3230" -"32","32","Zacatecas","Zac.","009","Chalchihuites","0001","Chalchihuites","10086","4892","5194","2677" -"32","32","Zacatecas","Zac.","010","Fresnillo","0001","Fresnillo","240532","117767","122765","64065" -"32","32","Zacatecas","Zac.","011","Trinidad García de la Cadena","0001","La Estanzuela","3362","1656","1706","1080" -"32","32","Zacatecas","Zac.","012","Genaro Codina","0001","Genaro Codina","8168","3943","4225","2054" -"32","32","Zacatecas","Zac.","013","General Enrique Estrada","0001","General Enrique Estrada","6644","3281","3363","1813" -"32","32","Zacatecas","Zac.","014","General Francisco R. Murguía","0001","Nieves","20191","9774","10417","5405" -"32","32","Zacatecas","Zac.","015","El Plateado de Joaquín Amaro","0001","El Plateado de Joaquín Amaro","1579","781","798","531" -"32","32","Zacatecas","Zac.","016","General Pánfilo Natera","0001","General Pánfilo Natera","23526","11441","12085","6041" -"32","32","Zacatecas","Zac.","017","Guadalupe","0001","Guadalupe","211740","102455","109285","60476" -"32","32","Zacatecas","Zac.","018","Huanusco","0001","Huanusco","4547","2257","2290","1357" -"32","32","Zacatecas","Zac.","019","Jalpa","0001","Jalpa","25296","12428","12868","7097" -"32","32","Zacatecas","Zac.","020","Jerez","0001","Jerez de García Salinas","59910","29165","30745","17861" -"32","32","Zacatecas","Zac.","021","Jiménez del Teul","0001","Jiménez del Teul","4465","2210","2255","1081" -"32","32","Zacatecas","Zac.","022","Juan Aldama","0001","Juan Aldama","19749","9565","10184","5400" -"32","32","Zacatecas","Zac.","023","Juchipila","0001","Juchipila","12251","5887","6364","3890" -"32","32","Zacatecas","Zac.","024","Loreto","0001","Loreto","53709","26267","27442","13004" -"32","32","Zacatecas","Zac.","025","Luis Moya","0001","Luis Moya","13184","6434","6750","3267" -"32","32","Zacatecas","Zac.","026","Mazapil","0001","Mazapil","17774","9111","8663","4649" -"32","32","Zacatecas","Zac.","027","Melchor Ocampo","0001","Melchor Ocampo","2736","1455","1281","722" -"32","32","Zacatecas","Zac.","028","Mezquital del Oro","0001","Mezquital del Oro","2451","1216","1235","735" -"32","32","Zacatecas","Zac.","029","Miguel Auza","0001","Miguel Auza","23713","11575","12138","5884" -"32","32","Zacatecas","Zac.","030","Momax","0001","Momax","2446","1185","1261","791" -"32","32","Zacatecas","Zac.","031","Monte Escobedo","0001","Monte Escobedo","8683","4284","4399","2789" -"32","32","Zacatecas","Zac.","032","Morelos","0001","Morelos","13207","6552","6655","3614" -"32","32","Zacatecas","Zac.","033","Moyahua de Estrada","0001","Moyahua de Estrada","4530","2218","2312","1458" -"32","32","Zacatecas","Zac.","034","Nochistlán de Mejía","0001","Nochistlán de Mejía","27945","13482","14463","8472" -"32","32","Zacatecas","Zac.","035","Noria de Ángeles","0001","Noria de Ángeles","16284","7900","8384","4126" -"32","32","Zacatecas","Zac.","036","Ojocaliente","0001","Ojocaliente","44144","21262","22882","10892" -"32","32","Zacatecas","Zac.","037","Pánuco","0001","Pánuco","17577","8780","8797","4742" -"32","32","Zacatecas","Zac.","038","Pinos","0001","Pinos","72241","34756","37485","19276" -"32","32","Zacatecas","Zac.","039","Río Grande","0001","Río Grande","64535","31280","33255","17720" -"32","32","Zacatecas","Zac.","040","Sain Alto","0001","Sain Alto","21844","10643","11201","5504" -"32","32","Zacatecas","Zac.","041","El Salvador","0001","El Salvador","2509","1274","1235","733" -"32","32","Zacatecas","Zac.","042","Sombrerete","0001","Sombrerete","63665","31467","32198","17199" -"32","32","Zacatecas","Zac.","043","Susticacán","0001","Susticacán","1365","664","701","404" -"32","32","Zacatecas","Zac.","044","Tabasco","0001","Tabasco","16588","8107","8481","4538" -"32","32","Zacatecas","Zac.","045","Tepechitlán","0001","Tepechitlán","8321","3984","4337","2554" -"32","32","Zacatecas","Zac.","046","Tepetongo","0001","Tepetongo","6490","3206","3284","2067" -"32","32","Zacatecas","Zac.","047","Teúl de González Ortega","0001","Teúl de González Ortega","5356","2612","2744","1658" -"32","32","Zacatecas","Zac.","048","Tlaltenango de Sánchez Román","0001","Tlaltenango de Sánchez Román","27302","13224","14078","7994" -"32","32","Zacatecas","Zac.","049","Valparaíso","0001","Valparaíso","32461","16029","16432","9095" -"32","32","Zacatecas","Zac.","050","Vetagrande","0001","Vetagrande","10276","5005","5271","2642" -"32","32","Zacatecas","Zac.","051","Villa de Cos","0001","Villa de Cos","34623","17255","17368","9186" -"32","32","Zacatecas","Zac.","052","Villa García","0001","Villa García","19525","9627","9898","4936" -"32","32","Zacatecas","Zac.","053","Villa González Ortega","0001","Villa González Ortega","13208","6275","6933","3493" -"32","32","Zacatecas","Zac.","054","Villa Hidalgo","0001","Villa Hidalgo","19446","9504","9942","4951" -"32","32","Zacatecas","Zac.","055","Villanueva","0001","Villanueva","31558","15590","15968","9052" -"32","32","Zacatecas","Zac.","056","Zacatecas","0001","Zacatecas","149607","71972","77635","42424" -"32","32","Zacatecas","Zac.","057","Trancoso","0001","Trancoso","20455","10039","10416","4671" -"32","32","Zacatecas","Zac.","058","Santa María de la Paz","0001","Santa María de la Paz","2767","1350","1417","860" -""" - - -# el argumento mapeo campos es un diccionario donde la clave de -# la isquierda es el el nombre atributo del modelo y el valor de la derecha es -# el nombre de la columna del csv al que corresponde -def importar_datos_desde_csv(csv_data, modelo, mapeo_campos, separador=',', on_duplicate_update=False): - print(f'Importando "{modelo}".') - - reader = csv.DictReader(StringIO(csv_data), delimiter=separador) - for row in reader: - datos_a_guardar = {} - for campo, columna_csv in mapeo_campos.items(): - datos_a_guardar[campo] = row.get(columna_csv) - nuevo_registro = modelo(**datos_a_guardar) - nuevo_registro.save() - sys.stdout.write(f'+{nuevo_registro.id}') # Imprime un símbolo de más para indicar éxito - - sys.stdout.flush() - print(f'Terminado de importar "{modelo}".') - - -def migracion_llenado_municipios_estados(apps, schema_editor): - # Obtener el modelo - Estado = apps.get_model('users', 'Estado') - Municipio = apps.get_model('users', 'Municipio') - - importar_datos_desde_csv(CSV_ESTADO_DATA, Estado, { - 'id': 'CVE_ENT', - 'nombre': 'NOM_ENT' - }) - - importar_datos_desde_csv(CSV_MUNICIPIO_DATA, Municipio, { - 'cve_mun': 'CVE_MUN', - 'estado_id': 'CVE_ENT', - 'nombre': 'NOM_MUN' - }) - - - # Actualizar el campo para todos los registros - - -class Migration(migrations.Migration): - - dependencies = [ - ('users', '0011_columna_excludefilters_dynamictablereport'), - ] - - operations = [ - migrations.RunPython(migracion_llenado_municipios_estados), - ] -- GitLab From c53265b585cda98f8b614a0fa87eaeab60102881 Mon Sep 17 00:00:00 2001 From: AdalbertoCV <34152734@uaz.edu.mx> Date: Tue, 13 Aug 2024 12:50:28 -0600 Subject: [PATCH 2/4] =?UTF-8?q?Exportaci=C3=B3n=20de=20datos=20separados?= =?UTF-8?q?=20por=20directorios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cosiap_api/dynamic_tables/DynamicTable.py | 68 +++++++++++++---------- 1 file changed, 40 insertions(+), 28 deletions(-) diff --git a/cosiap_api/dynamic_tables/DynamicTable.py b/cosiap_api/dynamic_tables/DynamicTable.py index 12f6799..af3d81e 100644 --- a/cosiap_api/dynamic_tables/DynamicTable.py +++ b/cosiap_api/dynamic_tables/DynamicTable.py @@ -575,51 +575,58 @@ class DynamicTable(serializers.ModelSerializer): Exporta los datos a un CSV y los archivos asociados a una estructura de directorios, y luego empaqueta todo en un archivo zip. """ - # Directorio temporal + # Configuramos los directorios correspondientes temp_dir = os.path.join(settings.BASE_DIR, 'temp_export', uid) os.makedirs(temp_dir, exist_ok=True) - - # Directorio para archivos files_dir = os.path.join(temp_dir, 'archivos') os.makedirs(files_dir, exist_ok=True) - - # Ruta para el archivo CSV csv_file_path = os.path.join(temp_dir, 'reporte.csv') - # Crear el archivo CSV + # Creamos el archivo CSV with open(csv_file_path, mode='w', newline='', encoding='utf-8') as csvfile: fieldnames = self.get_fieldnames(data) - print(data) - print(fieldnames) writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() for item in data: - # Manejar archivos adjuntos y agregar campos de rutas a CSV - self.handle_files(item, files_dir) - # Manejar documentos asociados if 'solicitud_n' in item: - self.handle_responses(item['solicitud_n'], files_dir) + solicitud_n = item['solicitud_n'] + solicitud_dir = os.path.join(files_dir, f'solicitud_{solicitud_n}') + os.makedirs(solicitud_dir, exist_ok=True) + + # Directorio para respuestas dentro de solicitud_n + respuestas_dir = os.path.join(solicitud_dir, 'respuestas') + os.makedirs(respuestas_dir, exist_ok=True) + + self.handle_files(item, solicitud_dir) + self.handle_responses(solicitud_n, respuestas_dir) + else: + self.handle_files(item, files_dir) writer.writerow(item) - # Crear un archivo zip + # Creamos un archivo zip zip_buffer = io.BytesIO() with ZipFile(zip_buffer, 'w') as zip_file: - zip_file.write(csv_file_path, 'data_export.csv') + # Añadimos el archivo CSV al ZIP solo una vez + zip_file.write(csv_file_path, 'reporte.csv') - for root, dirs, files in os.walk(files_dir): + # Añadimos todos los archivos del directorio temporal al ZIP + for root, dirs, files in os.walk(temp_dir): for file in files: file_path = os.path.join(root, file) - zip_file.write(file_path, os.path.relpath(file_path, files_dir)) + # Solo añadir archivos que no sean el CSV para evitar duplicación + if file != 'reporte.csv': + zip_file.write(file_path, os.path.relpath(file_path, temp_dir)) zip_buffer.seek(0) response = HttpResponse(zip_buffer, content_type='application/zip') response['Content-Disposition'] = f'attachment; filename="reporte_{uid}.zip"' - # Limpiar directorio temporal + # Limpiamos directorio temporal shutil.rmtree(temp_dir) return response + def get_fieldnames(self, data): """ Devuelve los nombres de los campos que se usarán en el CSV. @@ -630,17 +637,20 @@ class DynamicTable(serializers.ModelSerializer): first_item = data[0] return list(first_item.keys()) - def handle_files(self, item, files_dir): + + def handle_files(self, item, solicitud_dir): """ Maneja los archivos adjuntos, los guarda en el directorio correspondiente basado en el nombre de la columna. """ for key, value in item.items(): - if value and isinstance(value, str) and value.endswith(('.png', '.jpg', '.jpeg')): - # Detectar directorio basado en el nombre de la columna - column_dir = key.split('__')[0] + if value and isinstance(value, str) and value.endswith(('.png', '.jpg', '.jpeg', '.pdf')): + # Detectar directorio basado en la primera parte del nombre de la columna + column_dir = key.split('__')[0] + if column_dir == 'modalidad': + continue # Crear el directorio para archivos - file_dir = os.path.join(files_dir, column_dir) + file_dir = os.path.join(solicitud_dir, column_dir) os.makedirs(file_dir, exist_ok=True) file_name = os.path.basename(value) @@ -652,19 +662,21 @@ class DynamicTable(serializers.ModelSerializer): f.write(file_content) # Actualizar la ruta del archivo en el diccionario - item[key] = os.path.join('archivos', column_dir, file_name) + try: + item[key] = os.path.join('archivos', f'solicitud_{item["solicitud_n"]}', column_dir, file_name) + except: + continue + - def handle_responses(self, solicitud_n, files_dir): + def handle_responses(self, solicitud_n, respuestas_dir): """ Maneja la extracción de respuestas relacionadas con la solicitud y las guarda en el directorio correspondiente. """ - # Filtrar las respuestas por solicitud_n + # Filtrar las respuestas por solicitud responses = RDocumento.objects.filter(registro_id=solicitud_n) - respuesta_dir = os.path.join(files_dir, 'respuestas') - os.makedirs(respuesta_dir, exist_ok=True) for response in responses: - file_path = os.path.join(respuesta_dir, os.path.basename(response.valor.name)) + file_path = os.path.join(respuestas_dir, os.path.basename(response.valor.name)) file_content = default_storage.open(response.valor.name).read() with open(file_path, 'wb') as f: -- GitLab From 6e352e0e55604cc0e872bb002e81a96025bc69f3 Mon Sep 17 00:00:00 2001 From: AdalbertoCV <34152734@uaz.edu.mx> Date: Wed, 14 Aug 2024 12:13:07 -0600 Subject: [PATCH 3/4] =?UTF-8?q?Test=20de=20optimizaci=C3=B3n=20en=20dynami?= =?UTF-8?q?c=20tables?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cosiap_api/dynamic_tables/tests.py | 83 +++++++++++++++++++++++++++++- 1 file changed, 82 insertions(+), 1 deletion(-) diff --git a/cosiap_api/dynamic_tables/tests.py b/cosiap_api/dynamic_tables/tests.py index 6ba1f1d..0a6ae3f 100644 --- a/cosiap_api/dynamic_tables/tests.py +++ b/cosiap_api/dynamic_tables/tests.py @@ -2,8 +2,15 @@ from django.test import TestCase from django.urls import reverse from rest_framework.test import APIClient from rest_framework import status -from users.models import Usuario +from users.models import Usuario, Solicitante, Municipio, Estado +from solicitudes.models import Solicitud from .models import DynamicTableReport +from django.test.utils import CaptureQueriesContext +from django.db import connection +import os +from django.core.files import File +from django.conf import settings +import json class ReportesTests(TestCase): ''' @@ -155,3 +162,77 @@ class ReportesTests(TestCase): response = self.client.delete(url) self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT) self.assertFalse(DynamicTableReport.objects.filter(pk=self.reporte1.pk).exists()) + + +class OptimizacionTest(TestCase): + + ''' + Clase para probar las optimizaciones de rendimiento para tablas dinámicas. + ''' + + ine_file_path = os.path.join(settings.MEDIA_ROOT, 'protected_uploads/INE_files', 'test.png') + + def setUp(self): + ''' + Método para configurar las pruebas de optimizacion + ''' + self.client = APIClient() + self.usuario_data = {'curp': 'CEVA020423HGRRZDA8','nombre': 'Adalberto','email': 'adalc3488@gmail.com','password': 'testpassword123'} + self.usuario = Usuario.objects.create_superuser(**self.usuario_data) + self.usuario.is_active = True + self.usuario.is_staff = True + self.usuario.save() + + # Iniciar sesión + self.login_url = reverse('users:token_obtain') + response = self.client.post(self.login_url, {'curp': self.usuario_data['curp'],'password': self.usuario_data['password']}) + self.assertEqual(response.status_code, status.HTTP_200_OK) + self.access_token = response.data['access'] + self.client.credentials(HTTP_AUTHORIZATION=f'Bearer {self.access_token}') + + # Configurar cookie de refresh token + refresh_token = response.cookies.get('refresh_token') + if refresh_token: + self.client.cookies['refresh_token'] = refresh_token.value + + self.url = reverse('solicitudes:solicitudes') + self.data = {"model_name": "Solicitud","columns": ["status","solicitud_n","monto_solicitado","monto_aprobado","timestamp","solicitante__nombre"],"exclude_columns": ["monto_solicitado"],"filters": {},"exclude_filters": {},"search_query": ""} + self.data_filters = {"model_name": "Solicitud","columns": ["status","solicitud_n","monto_solicitado","monto_aprobado","timestamp","solicitante__nombre"],"exclude_columns": ["monto_solicitado"],"filters": {"status": {"icontains": ["Aprobado"]},"solicitante__nombre":{"icontains":["Adal"]}},"exclude_filters": {},"search_query": ""} + self.estado = Estado.objects.create(nombre="Zacetecas") + self.municipio = Municipio.objects.create(nombre="Guadalupe",estado=self.estado,cve_mun=1000) + + with open(self.ine_file_path, 'rb') as ine_file: + self.solicitante = Solicitante.objects.create(curp="CEVA020423HGRRZDA9",email="ceva@example.com",nombre="Adalberto",ap_paterno="Evans",ap_materno="Vargas",telefono="1234567890",RFC="CEVA0204237E4",direccion="Calle Falsa 123",codigo_postal="12345",municipio=self.municipio,poblacion="Test Poblacion",datos_bancarios=None,INE=File(ine_file), password="password") + + self.solicitud1 = Solicitud.objects.create(solicitante=self.solicitante,status="Pendiente",monto_solicitado=1000,monto_aprobado=800,observacion="Observación 1") + self.solicitud2 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + self.solicitud3 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + self.solicitud4 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + self.solicitud5 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + self.solicitud6 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + self.solicitud7 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + self.solicitud8 = Solicitud.objects.create(solicitante=self.solicitante,status="Aprobado",monto_solicitado=1500,monto_aprobado=1200,observacion="Observación 2") + + def test_performance(self): + """ + test para medir el rendimiento de las tablas dinámicas + """ + query_params = {'reporte': json.dumps(self.data)} + with CaptureQueriesContext(connection) as ctx: + response = self.client.get(self.url, query_params, format='json') + self.assertEqual(response.status_code, status.HTTP_200_OK) + + print(response.data) + print(f"\nRendimiento QUERYS: {len(ctx.captured_queries)}") + + def test_performance_filters(self): + """ + test para medir el rendimiento de las tablas dinámicas usando filtros + """ + query_params = {'reporte': json.dumps(self.data_filters)} + with CaptureQueriesContext(connection) as ctx: + response = self.client.get(self.url, query_params, format='json') + self.assertEqual(response.status_code, status.HTTP_200_OK) + + print(response.data) + print(f"\nRendimiento QUERYS: {len(ctx.captured_queries)}") \ No newline at end of file -- GitLab From e7d5261efbb4bd9d0d5fa0b53cc4f4507cb0e482 Mon Sep 17 00:00:00 2001 From: AdalbertoCV <34152734@uaz.edu.mx> Date: Wed, 14 Aug 2024 19:49:53 -0600 Subject: [PATCH 4/4] =?UTF-8?q?Exportaci=C3=B3n=20de=20solicitudes=20orden?= =?UTF-8?q?adas=20por=20CURP?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cosiap_api/dynamic_tables/DynamicTable.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/cosiap_api/dynamic_tables/DynamicTable.py b/cosiap_api/dynamic_tables/DynamicTable.py index af3d81e..c9f0e6d 100644 --- a/cosiap_api/dynamic_tables/DynamicTable.py +++ b/cosiap_api/dynamic_tables/DynamicTable.py @@ -587,16 +587,24 @@ class DynamicTable(serializers.ModelSerializer): fieldnames = self.get_fieldnames(data) writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() + + + solicitudes_por_curp = {} for item in data: - if 'solicitud_n' in item: - solicitud_n = item['solicitud_n'] - solicitud_dir = os.path.join(files_dir, f'solicitud_{solicitud_n}') + solicitante_curp = item.get('solicitante__curp') + if solicitante_curp: + solicitud_n = item.get('solicitud_n') + if solicitante_curp not in solicitudes_por_curp: + curp_dir = os.path.join(files_dir, f'solicitud_{solicitante_curp}') + os.makedirs(curp_dir, exist_ok=True) + solicitudes_por_curp[solicitante_curp] = curp_dir + + curp_dir = solicitudes_por_curp[solicitante_curp] + solicitud_dir = os.path.join(curp_dir, f'solicitud_{solicitud_n}') os.makedirs(solicitud_dir, exist_ok=True) - # Directorio para respuestas dentro de solicitud_n respuestas_dir = os.path.join(solicitud_dir, 'respuestas') os.makedirs(respuestas_dir, exist_ok=True) - self.handle_files(item, solicitud_dir) self.handle_responses(solicitud_n, respuestas_dir) else: @@ -663,7 +671,7 @@ class DynamicTable(serializers.ModelSerializer): # Actualizar la ruta del archivo en el diccionario try: - item[key] = os.path.join('archivos', f'solicitud_{item["solicitud_n"]}', column_dir, file_name) + item[key] = os.path.join('archivos', f'solicitud_{item["solicitante__curp"]}', column_dir, file_name) except: continue -- GitLab