Repository: jatkinson1000/archeryutils

Issue:
Add archery Australia Rounds
Outdoor
Indoor
Field

Hints from issue comments:

Solution patch:
diff --git a/README.md b/README.md
index b9c1ea95..7d203039 100644
--- a/README.md
+++ b/README.md
@@ -14,7 +14,7 @@ Designed to make the development of archery codes and apps easier.
 
 Contains:
 - generic representations of targets and rounds
-- World Archery, Archery GB, IFAA rounds
+- World Archery, Archery GB, IFAA, and Archery Australia rounds
 - calculations for Archery GB handicaps and Archery Australia archer skill level
 - calculation of Archery GB classifications
 
diff --git a/archeryutils/load_rounds.py b/archeryutils/load_rounds.py
index 18e055d7..c8dafc89 100644
--- a/archeryutils/load_rounds.py
+++ b/archeryutils/load_rounds.py
@@ -191,6 +191,9 @@ def _make_rounds_dict(json_name: str) -> DotDict:
 IFAA_field = _make_rounds_dict("IFAA_field.json")
 WA_VI = _make_rounds_dict("WA_VI.json")
 AGB_VI = _make_rounds_dict("AGB_VI.json")
+AA_outdoor_metric = _make_rounds_dict("AA_outdoor_metric.json")
+AA_indoor = _make_rounds_dict("AA_indoor.json")
+AA_field = _make_rounds_dict("AA_field.json")
 misc = _make_rounds_dict("Miscellaneous.json")
 
 
diff --git a/archeryutils/round_data_files/AA_field.json b/archeryutils/round_data_files/AA_field.json
new file mode 100644
index 00000000..fa4814b2
--- /dev/null
+++ b/archeryutils/round_data_files/AA_field.json
@@ -0,0 +1,114 @@
+[
+  {"name" : "Hunters Round (AA)",
+   "codename" : "hunters_round",
+   "location" : "field",
+   "body" : "AA",
+   "family" : "hunters_round",
+   "passes" : [{"n_arrows" : 16, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 32, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 40, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 24, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "National Field (AA) Red",
+   "codename" : "national_field_red",
+   "location" : "field",
+   "body" : "AA",
+   "family" : "aa_national_field",
+   "passes" : [{"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 45, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 55, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 6, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 8, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 12, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 45, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 45, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 55, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 60, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "National Field (AA) Blue",
+   "codename" : "national_field_blue",
+   "location" : "field",
+   "body" : "AA",
+   "family" : "aa_national_field",
+   "passes" : [{"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 45, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 4, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 6, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 8, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 45, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "National Field (AA) Yellow",
+   "codename" : "national_field_yellow",
+   "location" : "field",
+   "body" : "AA",
+   "family" : "aa_national_field",
+   "passes" : [{"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 5, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 8, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 4, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 6, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 8, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 20, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 5, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 10, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 40, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 15, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 60, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 25, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 35, "dist_unit" : "metre"},
+               {"n_arrows" : 2, "diameter" : 80, "scoring" : "AA_national_field", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  }
+]
diff --git a/archeryutils/round_data_files/AA_indoor.json b/archeryutils/round_data_files/AA_indoor.json
new file mode 100644
index 00000000..53c885d4
--- /dev/null
+++ b/archeryutils/round_data_files/AA_indoor.json
@@ -0,0 +1,52 @@
+[
+  {"name" : "Australian Indoor 1",
+   "codename" : "australian_indoor_1",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 40, "scoring" : "10_zone", "distance" : 18, "dist_unit" : "metre"}]
+  },
+  {"name" : "Australian Indoor 1 Compound",
+   "codename" : "australian_indoor_1_compound",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 40, "scoring" : "10_zone_compound", "distance" : 18, "dist_unit" : "metre"}]
+  },
+  {"name" : "Australian Indoor 1 Triple",
+   "codename" : "australian_indoor_1_triple",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 40, "scoring" : "10_zone_5_ring", "distance" : 18, "dist_unit" : "metre"}]
+  },
+  {"name" : "Australian Indoor 1 Compound Triple",
+   "codename" : "australian_indoor_1_compound_triple",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 40, "scoring" : "10_zone_5_ring_compound", "distance" : 18, "dist_unit" : "metre"}]
+  },
+
+
+  {"name" : "Australian Indoor 2",
+   "codename" : "australian_indoor_2",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 60, "scoring" : "10_zone", "distance" : 25, "dist_unit" : "metre"}]
+  },
+  {"name" : "Australian Indoor 2 Compound",
+   "codename" : "australian_indoor_2_compound",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 60, "scoring" : "10_zone_compound", "distance" : 25, "dist_unit" : "metre"}]
+  },
+  {"name" : "Australian Indoor 2 Triple",
+   "codename" : "australian_indoor_2_triple",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 60, "scoring" : "10_zone_5_ring", "distance" : 25, "dist_unit" : "metre"}]
+  },
+  {"name" : "Australian Indoor 2 Compound Triple",
+   "codename" : "australian_indoor_2_compound_triple",
+   "location" : "indoor",
+   "body" : "AA",
+   "passes" : [{"n_arrows" : 30, "diameter" : 60, "scoring" : "10_zone_5_ring_compound", "distance" : 25, "dist_unit" : "metre"}]
+  }
+]
diff --git a/archeryutils/round_data_files/AA_outdoor_metric.json b/archeryutils/round_data_files/AA_outdoor_metric.json
new file mode 100644
index 00000000..d72159e4
--- /dev/null
+++ b/archeryutils/round_data_files/AA_outdoor_metric.json
@@ -0,0 +1,305 @@
+[
+  {"name" : "AA50/1440",
+   "codename" : "aa_50_1440",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa1440",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 80, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "AA40/1440",
+   "codename" : "aa_40_1440",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa1440",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 80, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "Long Sydney",
+   "codename" : "long_sydney",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "sydney",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 90, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Sydney",
+   "codename" : "sydney",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "sydney",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "Long Brisbane",
+   "codename" : "long_brisbane",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "brisbane",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 90, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Brisbane",
+   "codename" : "brisbane",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "brisbane",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Adelaide",
+   "codename" : "adelaide",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "adelaide",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Short Adelaide",
+   "codename" : "short_adelaide",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "adelaide",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "Hobart",
+   "codename" : "hobart",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 90, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Perth",
+   "codename" : "perth",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Canberra",
+   "codename" : "canberra",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Short Canberra",
+   "codename" : "short_canberra",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Junior Canberra",
+   "codename" : "junior_canberra",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Mini Canberra",
+   "codename" : "mini_canberra",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 10, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "Grange",
+   "codename" : "grange",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Melbourne",
+   "codename" : "melbourne",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Darwin",
+   "codename" : "darwin",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Geelong",
+   "codename" : "geelong",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Newcastle",
+   "codename" : "newcastle",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 122, "scoring" : "10_zone", "distance" : 20, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Holt",
+   "codename" : "holt",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Samford",
+   "codename" : "samford",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Drake",
+   "codename" : "drake",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa900_single_distance",
+   "passes" : [{"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 30, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "Wollongong",
+   "codename" : "wollongong",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720_split_distance",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 90, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Townsville",
+   "codename" : "townsville",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720_split_distance",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 70, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 60, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "Launceston",
+   "codename" : "launceston",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720_split_distance",
+   "passes" : [{"n_arrows" : 36, "diameter" : 80, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 80, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  },
+
+
+  {"name" : "AA50/720",
+   "codename" : "aa_50_720",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 50, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "AA40/720",
+   "codename" : "aa_40_720",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 40, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "AA30/720",
+   "codename" : "aa_30_720",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  },
+  {"name" : "AA20/720",
+   "codename" : "aa_20_720",
+   "location" : "outdoor",
+   "body" : "AA",
+   "family" : "aa720",
+   "passes" : [{"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"},
+               {"n_arrows" : 36, "diameter" : 122, "scoring" : "10_zone", "distance" : 30, "dist_unit" : "metre"}
+              ]
+  }
+]
diff --git a/archeryutils/targets.py b/archeryutils/targets.py
index e5d94297..c9b3a02e 100644
--- a/archeryutils/targets.py
+++ b/archeryutils/targets.py
@@ -21,6 +21,7 @@
     "WA_field",
     "IFAA_field",
     "IFAA_field_expert",
+    "AA_national_field",
     "Beiter_hit_miss",
     "Worcester",
     "Worcester_2_ring",
@@ -412,6 +413,9 @@ def gen_face_spec(system: ScoringSystem, diameter: float) -> FaceSpec:
         elif system == "IFAA_field":
             spec = {_rnd6(n * diameter / 5): 5 - n // 2 for n in range(1, 6, 2)}
 
+        elif system == "AA_national_field":
+            spec = {_rnd6(n * diameter / 5): 6 - n for n in range(1, 6)}
+
         elif system == "Beiter_hit_miss":
             spec = {diameter: 1}
 
diff --git a/docs/api/archeryutils.preloaded_rounds.rst b/docs/api/archeryutils.preloaded_rounds.rst
index 474a71be..287c7404 100644
--- a/docs/api/archeryutils.preloaded_rounds.rst
+++ b/docs/api/archeryutils.preloaded_rounds.rst
@@ -39,8 +39,8 @@ WA Outdoor
 
     au.load_rounds.AGB_outdoor_imperial
 
-AGB Outdoor Imperial
---------------------
+AGB (Archery GB) Outdoor Imperial
+---------------------------------
 
 .. ipython:: python
 
@@ -48,8 +48,8 @@ AGB Outdoor Imperial
 
     au.load_rounds.WA_outdoor
 
-AGB Outdoor Metric
---------------------
+AGB (Archery GB) Outdoor Metric
+-------------------------------
 
 .. ipython:: python
 
@@ -57,8 +57,8 @@ AGB Outdoor Metric
 
     au.load_rounds.AGB_outdoor_metric
 
-AGB Outdoor Imperial
---------------------
+AGB (Archery GB) Outdoor Imperial
+---------------------------------
 
 .. ipython:: python
 
@@ -75,8 +75,8 @@ WA Indoor
 
     au.load_rounds.WA_indoor
 
-AGB Indoor
-----------
+AGB (Archery GB) Indoor
+-----------------------
 
 .. ipython:: python
 
@@ -111,8 +111,8 @@ WA VI
 
     au.load_rounds.WA_VI
 
-AGB VI
-------
+AGB (Archery GB) VI
+-------------------
 
 .. ipython:: python
 
@@ -120,6 +120,33 @@ AGB VI
 
     au.load_rounds.AGB_VI
 
+AA (Archery Australia) Outdoor
+------------------------------
+
+.. ipython:: python
+
+    import archeryutils as au
+
+    au.load_rounds.AA_outdoor_metric
+
+AA (Archery Australia) Indoor
+-----------------------------
+
+.. ipython:: python
+
+    import archeryutils as au
+
+    au.load_rounds.AA_indoor
+
+AA (Archery Australia) Field
+----------------------------
+
+.. ipython:: python
+
+    import archeryutils as au
+
+    au.load_rounds.AA_field
+
 Miscellaneous
 -------------
 
diff --git a/docs/develop/whats-new.rst b/docs/develop/whats-new.rst
index f713c409..c3aead1c 100644
--- a/docs/develop/whats-new.rst
+++ b/docs/develop/whats-new.rst
@@ -3,6 +3,7 @@ What's New
 
 Latest
 ------
+* Added Archery Australia rounds in `#135 <https://github.com/jatkinson1000/archeryutils/pull/135>`_
 * Better use of numpy typing in `#133 <https://github.com/jatkinson1000/archeryutils/pull/133>`_
 * Allow inputs to classification functions to be an archeryutils `Round`
   as well as a string in `#119 <https://github.com/jatkinson1000/archeryutils/pull/119>`_
diff --git a/docs/getting-started/quickstart.rst b/docs/getting-started/quickstart.rst
index 922501bb..c4693f86 100644
--- a/docs/getting-started/quickstart.rst
+++ b/docs/getting-started/quickstart.rst
@@ -176,6 +176,9 @@ Possible options for round collections are:
 * ``WA_indoor`` - World Archery indoor rounds
 * ``WA_field`` - World Archery field rounds
 * ``IFAA_field`` - IFAA indoor and outdoor rounds
+* ``AA_outdoor_metric`` - Archery Australia outdoor metric rounds
+* ``AA_indoor`` - Archery Australia indoor rounds
+* ``AA_field`` - Archery Australia field rounds
 * ``AGB_VI`` - Archery GB Visually Impaired rounds
 * ``WA_VI`` - World Archery Visually Impaired rounds
 * ``misc`` - Miscellaneous rounds such as individual distances, 252 awards, frostbites etc.


Test patch:
diff --git a/archeryutils/tests/test_rounds.py b/archeryutils/tests/test_rounds.py
index e1fc959d..3792a622 100644
--- a/archeryutils/tests/test_rounds.py
+++ b/archeryutils/tests/test_rounds.py
@@ -123,6 +123,7 @@ def test_custom_target(self) -> None:
             ("10_zone", 1000),
             ("WA_field", 600),
             ("IFAA_field", 500),
+            ("AA_national_field", 500),
             ("Worcester_2_ring", 500),
             ("Beiter_hit_miss", 100),
         ],
diff --git a/archeryutils/tests/test_targets.py b/archeryutils/tests/test_targets.py
index 485a47fd..46b3a509 100644
--- a/archeryutils/tests/test_targets.py
+++ b/archeryutils/tests/test_targets.py
@@ -163,6 +163,7 @@ def test_default_location(self) -> None:
             ("WA_field", 6),
             ("IFAA_field", 5),
             ("IFAA_field_expert", 5),
+            ("AA_national_field", 5),
             ("Worcester", 5),
             ("Worcester_2_ring", 5),
             ("Beiter_hit_miss", 1),
@@ -191,6 +192,7 @@ def test_max_score(
             ("WA_field", 1),
             ("IFAA_field", 3),
             ("IFAA_field_expert", 1),
+            ("AA_national_field", 1),
             ("Worcester", 1),
             ("Worcester_2_ring", 4),
             ("Beiter_hit_miss", 1),
@@ -273,6 +275,17 @@ def test_min_score(
                     0.5: 3,
                 },
             ),
+            (
+                "AA_national_field",
+                20,
+                {
+                    0.04: 5,
+                    0.08: 4,
+                    0.12: 3,
+                    0.16: 2,
+                    0.2: 1,
+                },
+            ),
             (
                 "Beiter_hit_miss",
                 6,