diff --git a/icons/shield_mx_state_2.svg b/icons/shield_mx_state_2.svg
new file mode 100644
index 000000000..52a0d58f5
--- /dev/null
+++ b/icons/shield_mx_state_2.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/shield_mx_state_3.svg b/icons/shield_mx_state_3.svg
new file mode 100644
index 000000000..2923349a2
--- /dev/null
+++ b/icons/shield_mx_state_3.svg
@@ -0,0 +1,4 @@
+
diff --git a/src/js/shield_defs.js b/src/js/shield_defs.js
index 5bcfcb6d0..9ce4994ac 100644
--- a/src/js/shield_defs.js
+++ b/src/js/shield_defs.js
@@ -546,6 +546,51 @@ export function loadShields() {
bottom: 2,
},
};
+ [
+ "AGS",
+ "BC",
+ "BCS",
+ "CAMP",
+ "COAH",
+ "COL",
+ "CHIS",
+ "CHIH",
+ "DGO",
+ "GTO",
+ "GRO",
+ "HGO",
+ "JAL",
+ // FIXME missing State of Mexico
+ "MICH",
+ "MOR",
+ "NAY",
+ "NL",
+ "OAX",
+ "PUE",
+ "QRO",
+ "Q.ROO",
+ "SLP",
+ "SIN",
+ "SON",
+ "TAB",
+ "TAM",
+ "TLAX",
+ "VER",
+ "YUC",
+ "ZAC",
+ ].forEach(
+ (state) =>
+ (shields[`MX:${state}`] = {
+ spriteBlank: ["shield_mx_state_2", "shield_mx_state_3"],
+ textColor: Color.shields.black,
+ padding: {
+ left: 2,
+ right: 2,
+ top: 5.5,
+ bottom: 4.5,
+ },
+ })
+ );
// Ejes Viales (CDMX)
shields["MX:CDMX:EJE:CENTRAL"] = {
diff --git a/src/shieldtest.js b/src/shieldtest.js
index 26b052058..f630a010f 100644
--- a/src/shieldtest.js
+++ b/src/shieldtest.js
@@ -121,6 +121,7 @@ let networks = [
"US:VA",
"US:PR:primary",
"HK",
+ "MX:QRO",
"CA:QC:A",
"NZ:SH",