{
    "formats": {
        "default": "{streetAddress}\n{locality} {postalCode}\n{region}\n{country}",
        "nocountry": "{streetAddress}\n{locality} {postalCode}\n{region}"
    },
    "startAt": "end",
    "fields": [
        {
            "name": "postalCode",
            "line": "startAtLast",
            "pattern": "[0-9]{5}"
        },
        {
            "name": "region",
            "line": "last",
            "pattern": [
                "Jakarta",
                "North Sulawesi",
                "Riau",
                "Yogyakarta",
                "East Kalimantan",
                "Riau Islands",
                "Central Kalimantan",
                "North Sumatra",
                "West Sumatra",
                "Bangka Belitung",
                "Bengkulu",
                "South Sumatra",
                "Jambi",
                "Central Java",
                "West Java",
                "Bali",
                "Nanggroe Aceh Darussalam",
                "East Java",
                "Maluku",
                "Lampung",
                "South Sulawesi",
                "Central Sulawesi",
                "Banten",
                "Gorontalo",
                "South East Sulawesi",
                "South Kalimantan",
                "West Sulawesi",
                "North Maluku",
                "West Kalimantan",
                "West Papua",
                "East Nusa Tenggara",
                "West Nusa Tenggara",
                "Papua"
            ]
        },
        {
            "name": "locality",
            "line": "last",
            "pattern": "(([A-Za-z]+)? [A-Za-z]+)$",
            "matchGroup": 1
        }
    ]
}
