package eu.kanade.tachiyomi.animeextension.tr.turkanime

import eu.kanade.tachiyomi.animesource.model.AnimeFilter
import eu.kanade.tachiyomi.animesource.model.AnimeFilterList

object TurkAnimeFilters {
    open class QueryPartFilter(
        displayName: String,
        private val vals: Array<Pair<String, String>>,
    ) : AnimeFilter.Select<String>(
        displayName,
        vals.map { it.second }.toTypedArray(),
    ) {
        fun toQueryPart() = vals[state].first
    }

    private inline fun <reified R> AnimeFilterList.asQueryPart(): String {
        return (getFirst<R>() as QueryPartFilter).toQueryPart()
    }

    private inline fun <reified R> AnimeFilterList.getFirst(): R {
        return first { it is R } as R
    }

    private inline fun <reified R> AnimeFilterList.parseCheckbox(
        options: Array<Pair<String, String>>,
    ): List<String> {
        return (getFirst<R>() as CheckBoxFilterList).state
            .filter { it.state }
            .map { checkbox -> options.find { it.second == checkbox.name }!!.first }
            .filter(String::isNotBlank)
    }

    open class CheckBoxFilterList(name: String, values: List<CheckBox>) :
        AnimeFilter.Group<AnimeFilter.CheckBox>(name, values)

    private class CheckBoxVal(name: String, state: Boolean = false) :
        AnimeFilter.CheckBox(name, state)

    class TypeFilter : CheckBoxFilterList(
        "Kategori",
        TurkAnimeFiltersData.TYPE.map { CheckBoxVal(it.second, false) },
    )

    class GenreFilter : CheckBoxFilterList(
        "Tür",
        TurkAnimeFiltersData.GENRE.map { CheckBoxVal(it.second, false) },
    )

    class YearFilter : CheckBoxFilterList(
        "Başlama & Bitiş Yılı",
        TurkAnimeFiltersData.YEAR.map { CheckBoxVal(it.second, false) },
    )

    class PointFilter : CheckBoxFilterList(
        "Başlama & Bitiş Puanı",
        TurkAnimeFiltersData.POINT.map { CheckBoxVal(it.second, false) },
    )

    class LikeFilter : CheckBoxFilterList(
        "Başlama & Bitiş Beğenisi",
        TurkAnimeFiltersData.LIKE.map { CheckBoxVal(it.second, false) },
    )

    class ProducerFilter : CheckBoxFilterList(
        "Yapımcı Firma",
        TurkAnimeFiltersData.PRODUCER.map { CheckBoxVal(it.second, false) },
    )

    class StudioFilter : CheckBoxFilterList(
        "Stüdyo",
        TurkAnimeFiltersData.PRODUCER.map { CheckBoxVal(it.second, false) },
    )

    class ListFilter : QueryPartFilter("Listeleme", TurkAnimeFiltersData.LIST)
    class SeasonFilter : QueryPartFilter("Sezon", TurkAnimeFiltersData.SEASON)
    class SortFilter : QueryPartFilter("Sıralama", TurkAnimeFiltersData.SORT)

    private fun Int.headerWarning(): String = "--- Seçilen son $this seçenek kullanılır ---"

    val FILTER_LIST
        get() = AnimeFilterList(
            AnimeFilter.Header(3.headerWarning()),
            TypeFilter(),
            AnimeFilter.Separator(),
            AnimeFilter.Header(3.headerWarning()),
            GenreFilter(),
            AnimeFilter.Separator(),
            AnimeFilter.Header(2.headerWarning()),
            YearFilter(),
            AnimeFilter.Separator(),
            AnimeFilter.Header(2.headerWarning()),
            PointFilter(),
            AnimeFilter.Separator(),
            AnimeFilter.Header(2.headerWarning()),
            LikeFilter(),
            AnimeFilter.Separator(),
            AnimeFilter.Header("Listenin yüklemesi zaman alabilir"),
            AnimeFilter.Header(3.headerWarning()),
            ProducerFilter(),
            AnimeFilter.Separator(),
            AnimeFilter.Header("Listenin yüklemesi zaman alabilir"),
            AnimeFilter.Header(3.headerWarning()),
            StudioFilter(),
            AnimeFilter.Separator(),
            ListFilter(),
            SeasonFilter(),
            SortFilter(),
        )

    data class FilterSearchParams(
        val type: List<String> = emptyList(),
        val genre: List<String> = emptyList(),
        val year: List<String> = emptyList(),
        val point: List<String> = emptyList(),
        val like: List<String> = emptyList(),
        val producer: List<String> = emptyList(),
        val studio: List<String> = emptyList(),
        val list: String = "",
        val season: String = "",
        val sort: String = "",
    )

    internal fun getSearchParameters(filters: AnimeFilterList): FilterSearchParams {
        if (filters.isEmpty()) return FilterSearchParams()

        return FilterSearchParams(
            filters.parseCheckbox<TypeFilter>(TurkAnimeFiltersData.TYPE),
            filters.parseCheckbox<GenreFilter>(TurkAnimeFiltersData.GENRE),
            filters.parseCheckbox<YearFilter>(TurkAnimeFiltersData.YEAR),
            filters.parseCheckbox<PointFilter>(TurkAnimeFiltersData.POINT),
            filters.parseCheckbox<LikeFilter>(TurkAnimeFiltersData.LIKE),
            filters.parseCheckbox<ProducerFilter>(TurkAnimeFiltersData.PRODUCER),
            filters.parseCheckbox<StudioFilter>(TurkAnimeFiltersData.PRODUCER),
            filters.asQueryPart<ListFilter>(),
            filters.asQueryPart<SeasonFilter>(),
            filters.asQueryPart<SortFilter>(),
        )
    }

    private object TurkAnimeFiltersData {
        val GENRE = arrayOf(
            Pair("1", "Aksiyon"),
            Pair("3", "Arabalar"),
            Pair("38", "Askeri"),
            Pair("5", "Avangard"),
            Pair("24", "Bilim Kurgu"),
            Pair("16", "Büyü"),
            Pair("15", "Çocuklar"),
            Pair("37", "Doğaüstü Güçler"),
            Pair("17", "Dövüş Sanatları"),
            Pair("8", "Dram"),
            Pair("9", "Ecchi"),
            Pair("10", "Fantastik"),
            Pair("41", "Gerilim"),
            Pair("7", "Gizem"),
            Pair("35", "Harem"),
            Pair("43", "Josei"),
            Pair("4", "Komedi"),
            Pair("14", "Korku"),
            Pair("2", "Macera"),
            Pair("18", "Mecha"),
            Pair("19", "Müzik"),
            Pair("23", "Okul"),
            Pair("11", "Oyun"),
            Pair("20", "Parodi"),
            Pair("39", "Polisiye"),
            Pair("40", "Psikolojik"),
            Pair("22", "Romantizm"),
            Pair("21", "Samuray"),
            Pair("42", "Seinen"),
            Pair("6", "Şeytanlar"),
            Pair("25", "Shoujo"),
            Pair("26", "Shoujo Ai"),
            Pair("27", "Shounen"),
            Pair("28", "Shounen Ai"),
            Pair("30", "Spor"),
            Pair("31", "Süper Güçler"),
            Pair("13", "Tarihi"),
            Pair("29", "Uzay"),
            Pair("32", "Vampir"),
            Pair("33", "Yaoi"),
            Pair("36", "Yaşamdan Kesitler"),
            Pair("34", "Yuri"),
        )

        val YEAR = arrayOf(
            Pair("1930", "1930"),
            Pair("1931", "1931"),
            Pair("1932", "1932"),
            Pair("1933", "1933"),
            Pair("1934", "1934"),
            Pair("1935", "1935"),
            Pair("1936", "1936"),
            Pair("1937", "1937"),
            Pair("1938", "1938"),
            Pair("1939", "1939"),
            Pair("1940", "1940"),
            Pair("1941", "1941"),
            Pair("1942", "1942"),
            Pair("1943", "1943"),
            Pair("1944", "1944"),
            Pair("1945", "1945"),
            Pair("1946", "1946"),
            Pair("1947", "1947"),
            Pair("1948", "1948"),
            Pair("1949", "1949"),
            Pair("1950", "1950"),
            Pair("1951", "1951"),
            Pair("1952", "1952"),
            Pair("1953", "1953"),
            Pair("1954", "1954"),
            Pair("1955", "1955"),
            Pair("1956", "1956"),
            Pair("1957", "1957"),
            Pair("1958", "1958"),
            Pair("1959", "1959"),
            Pair("1960", "1960"),
            Pair("1961", "1961"),
            Pair("1962", "1962"),
            Pair("1963", "1963"),
            Pair("1964", "1964"),
            Pair("1965", "1965"),
            Pair("1966", "1966"),
            Pair("1967", "1967"),
            Pair("1968", "1968"),
            Pair("1969", "1969"),
            Pair("1970", "1970"),
            Pair("1971", "1971"),
            Pair("1972", "1972"),
            Pair("1973", "1973"),
            Pair("1974", "1974"),
            Pair("1975", "1975"),
            Pair("1976", "1976"),
            Pair("1977", "1977"),
            Pair("1978", "1978"),
            Pair("1979", "1979"),
            Pair("1980", "1980"),
            Pair("1981", "1981"),
            Pair("1982", "1982"),
            Pair("1983", "1983"),
            Pair("1984", "1984"),
            Pair("1985", "1985"),
            Pair("1986", "1986"),
            Pair("1987", "1987"),
            Pair("1988", "1988"),
            Pair("1989", "1989"),
            Pair("1990", "1990"),
            Pair("1991", "1991"),
            Pair("1992", "1992"),
            Pair("1993", "1993"),
            Pair("1994", "1994"),
            Pair("1995", "1995"),
            Pair("1996", "1996"),
            Pair("1997", "1997"),
            Pair("1998", "1998"),
            Pair("1999", "1999"),
            Pair("2000", "2000"),
            Pair("2001", "2001"),
            Pair("2002", "2002"),
            Pair("2003", "2003"),
            Pair("2004", "2004"),
            Pair("2005", "2005"),
            Pair("2006", "2006"),
            Pair("2007", "2007"),
            Pair("2008", "2008"),
            Pair("2009", "2009"),
            Pair("2010", "2010"),
            Pair("2011", "2011"),
            Pair("2012", "2012"),
            Pair("2013", "2013"),
            Pair("2014", "2014"),
            Pair("2015", "2015"),
            Pair("2016", "2016"),
            Pair("2017", "2017"),
            Pair("2018", "2018"),
            Pair("2019", "2019"),
            Pair("2020", "2020"),
            Pair("2021", "2021"),
            Pair("2022", "2022"),
            Pair("2023", "2023"),
            Pair("2024", "2024"),
            Pair("2025", "2025"),
            Pair("2026", "2026"),
        ).reversedArray()

        val TYPE = arrayOf(
            Pair("TV", "TV"),
            Pair("Movie", "Movie"),
            Pair("OVA", "OVA"),
            Pair("ONA", "ONA"),
            Pair("Special", "Special"),
        )

        val LIST = arrayOf(
            Pair("", "Seçiniz"),
            Pair("0", "Alfabetik"),
            Pair("1", "Puan"),
            Pair("2", "Beğeni"),
            Pair("3", "Tarih"),
            Pair("4", "MAL Puanı"),
        )

        val SEASON = arrayOf(
            Pair("", "Seçiniz"),
            Pair("1", "İlkbahar"),
            Pair("2", "Yaz"),
            Pair("3", "Sonbahar"),
            Pair("4", "Kış"),
        )

        val SORT = arrayOf(
            Pair("", "Seçiniz"),
            Pair("ASC", "A > Z"),
            Pair("DESC", "Z > A"),
        )

        val POINT = arrayOf(
            Pair("1", "1"),
            Pair("2", "2"),
            Pair("3", "3"),
            Pair("4", "4"),
            Pair("5", "5"),
            Pair("6", "6"),
            Pair("7", "7"),
            Pair("8", "8"),
            Pair("9", "9"),
            Pair("10", "10"),
        )

        val LIKE = arrayOf(
            Pair("1000", "1000"),
            Pair("2000", "2000"),
            Pair("3000", "3000"),
            Pair("4000", "4000"),
            Pair("5000", "5000"),
            Pair("6000", "6000"),
            Pair("7000", "7000"),
            Pair("8000", "8000"),
            Pair("9000", "9000"),
            Pair("10000", "10000"),
            Pair("11000", "11000"),
            Pair("12000", "12000"),
            Pair("13000", "13000"),
            Pair("14000", "14000"),
            Pair("15000", "15000"),
            Pair("16000", "16000"),
            Pair("17000", "17000"),
            Pair("18000", "18000"),
            Pair("19000", "19000"),
            Pair("20000", "20000"),
        )

        val PRODUCER = arrayOf(
            Pair("1", "Studio Pierrot"),
            Pair("2", "Kyoto Animation"),
            Pair("3", "Gonzo"),
            Pair("4", "Bones"),
            Pair("5", "Bee Train"),
            Pair("6", "Gainax"),
            Pair("7", "J.C.Staff"),
            Pair("8", "Artland"),
            Pair("10", "Production I.G"),
            Pair("11", "Madhouse"),
            Pair("13", "Studio 4°C"),
            Pair("14", "Sunrise"),
            Pair("15", "Sony Pictures Entertainment"),
            Pair("16", "TV Tokyo"),
            Pair("17", "Aniplex"),
            Pair("18", "Toei Animation"),
            Pair("21", "Studio Ghibli"),
            Pair("22", "Nippon Animation"),
            Pair("23", "Bandai Visual"),
            Pair("24", "Studio Fantasia"),
            Pair("25", "Milky Animation Label"),
            Pair("27", "Xebec"),
            Pair("28", "OLM"),
            Pair("29", "VAP"),
            Pair("30", "Ajia-Do"),
            Pair("31", "Geneon Universal Entertainment"),
            Pair("32", "Manglobe"),
            Pair("33", "WOWOW"),
            Pair("34", "Hal Film Maker"),
            Pair("35", "Seven Arcs"),
            Pair("36", "Studio Gallop"),
            Pair("37", "Studio Deen"),
            Pair("38", "Arms"),
            Pair("39", "Daume"),
            Pair("40", "m.o.e."),
            Pair("41", "Satelight"),
            Pair("42", "GDH"),
            Pair("43", "ufotable"),
            Pair("44", "Shaft"),
            Pair("45", "Pink Pineapple"),
            Pair("47", "Khara"),
            Pair("48", "AIC"),
            Pair("49", "Remic"),
            Pair("50", "KSS"),
            Pair("51", "Diomedea"),
            Pair("52", "Avex Entertainment"),
            Pair("53", "Dentsu"),
            Pair("54", "Mook Animation"),
            Pair("55", "TV Asahi"),
            Pair("56", "A-1 Pictures"),
            Pair("58", "Square Enix"),
            Pair("59", "Beat Frog"),
            Pair("60", "Actas"),
            Pair("61", "Frontier Works"),
            Pair("62", "Shogakukan Productions"),
            Pair("63", "Trinet Entertainment"),
            Pair("64", "Sotsu"),
            Pair("65", "Tokyo Movie Shinsha"),
            Pair("67", "OB Planning"),
            Pair("68", "Mushi Production"),
            Pair("69", "Front Line"),
            Pair("70", "Nomad"),
            Pair("71", "Mellow Head"),
            Pair("72", "Artmic"),
            Pair("73", "TMS Entertainment"),
            Pair("75", "Imagin"),
            Pair("76", "Yomiuri Telecasting Corporation"),
            Pair("77", "APPP"),
            Pair("78", "Picture Magic"),
            Pair("79", "Genco"),
            Pair("80", "Trans Arts"),
            Pair("81", "Radix"),
            Pair("82", "Marvelous Entertainment"),
            Pair("83", "AIC Spirits"),
            Pair("84", "Studio Rikka"),
            Pair("85", "Konami"),
            Pair("86", "Group TAC"),
            Pair("88", "AIC A.S.T.A."),
            Pair("89", "BeSTACK"),
            Pair("91", "feel."),
            Pair("92", "Starchild Records"),
            Pair("93", "Studio Flag"),
            Pair("94", "Telecom Animation Film"),
            Pair("95", "Doga Kobo"),
            Pair("96", "Yumeta Company"),
            Pair("97", "ADV Films"),
            Pair("98", "Sav! The World Productions"),
            Pair("99", "Kitty Films"),
            Pair("100", "TV Osaka"),
            Pair("101", "Studio Hibari"),
            Pair("102", "FUNimation Entertainment"),
            Pair("103", "Tatsunoko Production"),
            Pair("104", "Lantis"),
            Pair("107", "Plum"),
            Pair("108", "Media Factory"),
            Pair("109", "Shochiku"),
            Pair("110", "Triangle Staff"),
            Pair("111", "NHK"),
            Pair("113", "Kadokawa Shoten"),
            Pair("114", "Studio Matrix"),
            Pair("116", "Broccoli"),
            Pair("117", "Studio Izena"),
            Pair("118", "SynergySP"),
            Pair("119", "Viz Media"),
            Pair("120", "TNK"),
            Pair("121", "Active"),
            Pair("122", "Tokyo Kids"),
            Pair("123", "Victor Entertainment"),
            Pair("124", "Animac"),
            Pair("126", "Studio Comet"),
            Pair("127", "Yomiko Advertising"),
            Pair("129", "Silky’s"),
            Pair("130", "CherryLips"),
            Pair("131", "G&G Entertainment"),
            Pair("132", "P.A. Works"),
            Pair("133", "Shinyusha"),
            Pair("134", "HoriPro"),
            Pair("135", "MediaNet"),
            Pair("136", "Vega Entertainment"),
            Pair("137", "PPM"),
            Pair("138", "Himajin Planning"),
            Pair("139", "Nihon Ad Systems"),
            Pair("140", "Animax"),
            Pair("141", "Toei Video"),
            Pair("142", "Asatsu DK"),
            Pair("143", "Mainichi Broadcasting System"),
            Pair("144", "Pony Canyon"),
            Pair("145", "TBS"),
            Pair("146", "CBC"),
            Pair("147", "SKY Perfect Well Think"),
            Pair("148", "Hakusensha"),
            Pair("149", "SME Visual Works"),
            Pair("150", "Sanrio"),
            Pair("152", "Green Bunny"),
            Pair("153", "SoftX"),
            Pair("154", "E&G Films"),
            Pair("155", "Animate Film"),
            Pair("156", "Polygram Japan"),
            Pair("157", "BMG Japan"),
            Pair("158", "Kids Station"),
            Pair("159", "Kodansha"),
            Pair("160", "Rondo Robe"),
            Pair("161", "Sogo Vision"),
            Pair("163", "Asread"),
            Pair("164", "d-rights"),
            Pair("165", "Marubeni"),
            Pair("166", "Movic"),
            Pair("167", "Sega"),
            Pair("168", "Shelty"),
            Pair("169", "Fuji TV"),
            Pair("170", "Imagica"),
            Pair("171", "A Line"),
            Pair("172", "Alchemist"),
            Pair("175", "Planet"),
            Pair("176", "Ginga Ya"),
            Pair("177", "Studio Kyuuma"),
            Pair("178", "Trilogy Future Studio"),
            Pair("179", "A.C.G.T."),
            Pair("182", "Age"),
            Pair("183", "Agent 21"),
            Pair("184", "Ai ga areba Daijobu"),
            Pair("185", "Aiko"),
            Pair("189", "GEN Productions"),
            Pair("190", "RCC Chugoku Broadcasting"),
            Pair("191", "Eiken"),
            Pair("192", "Shinkuukan"),
            Pair("193", "Idea Factory"),
            Pair("194", "ANIK"),
            Pair("195", "Pixy"),
            Pair("196", "Production Reed"),
            Pair("198", "Gakken"),
            Pair("199", "Studio Nue"),
            Pair("200", "Tezuka Productions"),
            Pair("204", "Pioneer LDC"),
            Pair("206", "Digital Works"),
            Pair("207", "Magic Bus"),
            Pair("208", "Three Fat Samurai"),
            Pair("209", "Sol Blade"),
            Pair("210", "Studio Tulip"),
            Pair("211", "Rakuonsha"),
            Pair("212", "Venus Vangard"),
            Pair("213", "Half H.P Studio"),
            Pair("214", "BS-i"),
            Pair("215", "Nelvana"),
            Pair("216", "Studio Tron"),
            Pair("217", "Nozomi Entertainment"),
            Pair("218", "Zexcs"),
            Pair("220", "Youmex"),
            Pair("222", "Jade Animation"),
            Pair("224", "Toshiba EMI"),
            Pair("226", "Panmedia"),
            Pair("228", "Daewon Media"),
            Pair("229", "The Answer Studio"),
            Pair("230", "Bandai"),
            Pair("231", "CyberConnect2"),
            Pair("233", "Bandai Entertainment"),
            Pair("234", "Oh! Production"),
            Pair("235", "Shirogumi"),
            Pair("236", "YTV"),
            Pair("238", "AT-X"),
            Pair("239", "Y.O.U.C"),
            Pair("240", "Capcom"),
            Pair("241", "Koei"),
            Pair("242", "Ashi Productions"),
            Pair("244", "D3"),
            Pair("245", "Toho Company"),
            Pair("246", "Visual 80"),
            Pair("247", "Shin-Ei Animation"),
            Pair("248", "Tin House"),
            Pair("249", "Robot"),
            Pair("250", "Media Blasters"),
            Pair("252", "4Kids Entertainment"),
            Pair("253", "Rikuentai"),
            Pair("254", "Soft Garage"),
            Pair("255", "Imagi"),
            Pair("256", "Studio Kikan"),
            Pair("257", "Jam"),
            Pair("258", "Echo"),
            Pair("259", "Kaeruotoko Shokai"),
            Pair("260", "Shuuhei Morita"),
            Pair("261", "San-X"),
            Pair("262", "Kadokawa Pictures USA"),
            Pair("265", "Valkyria"),
            Pair("266", "Natural High"),
            Pair("267", "Five Ways"),
            Pair("268", "Hot Bear"),
            Pair("269", "DiC Entertainment"),
            Pair("270", "NuTech Digital"),
            Pair("271", "Barnum Studio"),
            Pair("272", "Studio Kajino"),
            Pair("273", "Think Corporation"),
            Pair("274", "Suzuki Mirano"),
            Pair("275", "Kojiro Shishido Animation Works"),
            Pair("276", "DLE"),
            Pair("277", "Anime Midstream"),
            Pair("278", "Daiei"),
            Pair("279", "Skouras"),
            Pair("280", "Studio Junio"),
            Pair("281", "Kokusai Eigasha"),
            Pair("282", "Gentosha Comics"),
            Pair("283", "KENMedia"),
            Pair("284", "Central Park Media"),
            Pair("285", "Four Some"),
            Pair("287", "David Production"),
            Pair("288", "Kaname Productions"),
            Pair("289", "ACiD FiLM"),
            Pair("290", "Kinema Citrus"),
            Pair("291", "CoMix Wave Films"),
            Pair("292", "AIC Plus+"),
            Pair("293", "Picograph"),
            Pair("294", "Discovery"),
            Pair("296", "Critical Mass Video"),
            Pair("297", "Armor"),
            Pair("298", "Studio Anima"),
            Pair("299", "Studio Pastoral"),
            Pair("300", "Silver Link."),
            Pair("301", "Langmaor"),
            Pair("302", "GODxDOG Production"),
            Pair("304", "Primastea"),
            Pair("306", "Magic Capsule"),
            Pair("307", "Sunwoo Entertainment"),
            Pair("308", "Yellow Film"),
            Pair("309", "GoHands"),
            Pair("310", "Animeigo"),
            Pair("311", "Enoki Films"),
            Pair("312", "Life Work"),
            Pair("313", "Omnibus Japan"),
            Pair("314", "White Fox"),
            Pair("315", "DAX Production"),
            Pair("316", "Nippon Shuppan Hanbai (Nippan) K.K."),
            Pair("318", "WAO World"),
            Pair("319", "MS Pictures"),
            Pair("320", "Maru Production"),
            Pair("321", "Kitty Media"),
            Pair("322", "Bee Media"),
            Pair("323", "Nippon Columbia"),
            Pair("324", "Directions"),
            Pair("325", "Code"),
            Pair("326", "Animation 21"),
            Pair("327", "Takara"),
            Pair("328", "Casio Entertainment"),
            Pair("329", "Phoenix Entertainment"),
            Pair("330", "Kanaban Graphics"),
            Pair("331", "Indeprox"),
            Pair("332", "Takeshobo"),
            Pair("333", "TYO Animations"),
            Pair("334", "Ordet"),
            Pair("335", "Seta Corporation"),
            Pair("336", "JM animation"),
            Pair("338", "Studio Bogey"),
            Pair("339", "Rankin/Bass"),
            Pair("340", "Future Planet"),
            Pair("341", "SamBakZa"),
            Pair("342", "Japan Home Video"),
            Pair("343", "Puzzle Animation Studio Limited"),
            Pair("344", "Atlus"),
            Pair("345", "TAKI Corporation"),
            Pair("346", "Hoods Entertainment"),
            Pair("347", "PrimeTime"),
            Pair("348", "Kawamoto Productions"),
            Pair("349", "Itasca Studio"),
            Pair("350", "The Village of Marchen"),
            Pair("351", "Big West"),
            Pair("352", "Kadokawa Pictures Japan"),
            Pair("353", "Chungeorahm Film"),
            Pair("354", "Encourage Films"),
            Pair("356", "Cranberry"),
            Pair("357", "Innocent Grey"),
            Pair("358", "Telescreen BV"),
            Pair("359", "NHK-BS2"),
            Pair("361", "Oxybot"),
            Pair("362", "Film Workshop"),
            Pair("363", "Topcraft"),
            Pair("364", "Sovat Theater"),
            Pair("365", "PoRO"),
            Pair("366", "Tomoyasu Murata Company"),
            Pair("367", "Heewon Entertainment"),
            Pair("368", "UM Productions"),
            Pair("370", "Iyasakadou Film"),
            Pair("371", "Union Cho"),
            Pair("372", "NIS America, Inc."),
            Pair("373", "Panda Factory"),
            Pair("374", "Plus Heads"),
            Pair("375", "I.Toon"),
            Pair("376", "Sentai Filmworks"),
            Pair("377", "Kuri Jikken Manga Kobo"),
            Pair("378", "Grasshoppa!"),
            Pair("379", "Avaco Creative Studios"),
            Pair("380", "Amuse Pictures"),
            Pair("381", "Yamato Works"),
            Pair("382", "Tokuma Shoten"),
            Pair("383", "KMMJ Studios"),
            Pair("384", "Trick Block"),
            Pair("385", "Tele-Cartoon Japan"),
            Pair("386", "Animaruya"),
            Pair("387", "Blue Eyes"),
            Pair("388", "Tamura Shigeru Studio"),
            Pair("389", "I-move"),
            Pair("390", "Tsuchida Productions"),
            Pair("391", "Grouper Productions"),
            Pair("392", "Enterbrain"),
            Pair("393", "Epoch"),
            Pair("394", "Misseri Studio"),
            Pair("395", "Oz"),
            Pair("397", "Bridge"),
            Pair("398", "Milky Cartoon"),
            Pair("399", "Dream Force"),
            Pair("400", "Gathering"),
            Pair("401", "ChuChu"),
            Pair("402", "ChiChinoya"),
            Pair("403", "Tokyo Media Connections"),
            Pair("404", "Studio Unicorn"),
            Pair("405", "T-Rex"),
            Pair("406", "Asahi Production"),
            Pair("407", "Studio 9 MAiami"),
            Pair("408", "Amino"),
            Pair("409", "Studio Egg"),
            Pair("410", "Adult Source Media"),
            Pair("411", "KBS"),
            Pair("412", "Studio Wombat"),
            Pair("413", "Pastel"),
            Pair("414", "Lemon Heart"),
            Pair("415", "Warner Bros."),
            Pair("416", "TAP"),
            Pair("417", "Walt Disney Studios"),
            Pair("418", "Studio Gokumi"),
            Pair("419", "ElectromagneticWave"),
            Pair("420", "ACC Production"),
            Pair("421", "International Digital Artist"),
            Pair("422", "Schoolzone"),
            Pair("423", "Studio Eromatick"),
            Pair("424", "Mary Jane"),
            Pair("425", "AIC Takarazuka"),
            Pair("426", "Filmlink International"),
            Pair("427", "Studio G-1Neo"),
            Pair("428", "Nichiei Agency"),
            Pair("429", "Office AO"),
            Pair("430", "Mad Box"),
            Pair("431", "Procidis"),
            Pair("432", "Kachidoki Studio"),
            Pair("433", "View Works"),
            Pair("434", "Synergy Japan"),
            Pair("435", "Studio Zero"),
            Pair("436", "AIC Build"),
            Pair("437", "Kamikaze Douga"),
            Pair("438", "Studio Signal"),
            Pair("439", "Project No.9"),
            Pair("440", "Studio Kuma"),
            Pair("441", "8bit"),
            Pair("442", "Minami Machi Bugyousho"),
            Pair("443", "Studio PuYUKAI"),
            Pair("444", "Jinnis Animation Studios"),
            Pair("445", "Bliss Pictures"),
            Pair("446", "RTHK"),
            Pair("447", "Hero Communication"),
            Pair("448", "Postgal Workshop"),
            Pair("449", "Maikaze"),
            Pair("450", "Wako Productions"),
            Pair("451", "Cookie Jar Entertainment"),
            Pair("452", "Knack Productions"),
            Pair("453", "Tsuburaya Productions"),
            Pair("455", "Palm Studio"),
            Pair("456", "Lerche"),
            Pair("457", "Venet"),
            Pair("458", "Beijing Sharaku Art"),
            Pair("459", "Nitroplus"),
            Pair("460", "KlockWorx"),
            Pair("461", "OLE-M"),
            Pair("462", "Chaos Project"),
            Pair("463", "M.S.C"),
            Pair("464", "flying DOG"),
            Pair("465", "Hasbro"),
            Pair("466", "Digital Media Lab"),
            Pair("467", "Discotek"),
            Pair("468", "Nihon Falcom"),
            Pair("469", "ING"),
            Pair("470", "GAGA Communications"),
            Pair("471", "Shanghai Animation Film Studio"),
            Pair("472", "Usagi.Ou"),
            Pair("473", "Ascension"),
            Pair("474", "Shogakukan Music & Digital Entertainment"),
            Pair("475", "Ishikawa Pro"),
            Pair("476", "The Berich"),
            Pair("477", "Kino Production"),
            Pair("478", "Studio Blanc"),
            Pair("479", "DOGA Productions"),
            Pair("481", "Office Take Off"),
            Pair("482", "Automatic Flowers Studio"),
            Pair("483", "Marvel Entertainment"),
            Pair("484", "TOKYOPOP"),
            Pair("485", "Shinwon Productions"),
            Pair("486", "Digital Frontier"),
            Pair("487", "Studio MWP"),
            Pair("488", "Anchor Bay Films"),
            Pair("489", "TCJ"),
            Pair("490", "Maiden Japan"),
            Pair("491", "Byakuya Shobo"),
            Pair("492", "Horannabi"),
            Pair("493", "Aniplex of America"),
            Pair("494", "Studio Take Off"),
            Pair("495", "Moonstone Cherry"),
            Pair("497", "Studio Gram"),
            Pair("499", "The Pokemon Company International"),
            Pair("501", "Miramax Films"),
            Pair("503", "Nintendo"),
            Pair("505", "Nintendo of America"),
            Pair("507", "Universal Studios"),
            Pair("509", "Fuji Video"),
            Pair("511", "Wonder Kids"),
            Pair("513", "Nikkatsu"),
            Pair("515", "Fairy Dust"),
            Pair("517", "Asmik Ace Entertainment"),
            Pair("519", "Collaboration Works"),
            Pair("521", "Anpro"),
            Pair("523", "SBS TV Production"),
            Pair("525", "KAGAYA Studio"),
            Pair("527", "Higa Brothers Production"),
            Pair("529", "Lapis"),
            Pair("531", "Elevenarts"),
            Pair("533", "N&G Production"),
            Pair("535", "Knack Animation"),
            Pair("537", "SANZIGEN"),
            Pair("539", "Ultra Super Pictures"),
            Pair("541", "Seven"),
            Pair("543", "Studio Saki Makura"),
            Pair("545", "Studio Deva Loka"),
            Pair("547", "Hobby Japan"),
            Pair("549", "StudioRF Inc."),
            Pair("551", "Crossphere"),
            Pair("553", "Marvy Jack"),
            Pair("555", "Studio Chizu"),
            Pair("557", "Zyc"),
            Pair("559", "Purple Cow Studio Japan"),
            Pair("561", "U/M/A/A Inc."),
            Pair("563", "LandQ studios"),
            Pair("565", "LMD"),
            Pair("567", "D.A.S.T."),
            Pair("569", "MAPPA"),
            Pair("571", "Obtain Future"),
            Pair("573", "JapanAnime"),
            Pair("575", "Katsudou-manga-kan"),
            Pair("577", "Tohokushinsha Film Corporation"),
            Pair("579", "AT-2"),
            Pair("581", "Sparky Animation"),
            Pair("583", "Annapuru"),
            Pair("585", "Arplants"),
            Pair("587", "Tomason"),
            Pair("589", "Academy Productions"),
            Pair("591", "Romanov Films"),
            Pair("593", "Egg"),
            Pair("595", "NYAV Post"),
            Pair("601", "ixtl"),
            Pair("605", "C2C"),
            Pair("607", "RAMS"),
            Pair("609", "Cammot"),
            Pair("611", "Sakura Production"),
            Pair("613", "Jormungand Production Partners"),
            Pair("615", "Dream Creation"),
            Pair("619", "Cospa"),
            Pair("621", "SoftBank Creative Corp."),
            Pair("623", "Kimi To Boku Production Partners"),
            Pair("627", "Madoka Partners"),
            Pair("629", "Studio Sign"),
            Pair("633", "Tasogare Otome×Amnesia Production Partners"),
            Pair("637", "Möbius Tone"),
            Pair("643", "Trinity Sound"),
            Pair("645", "Audio Highs"),
            Pair("647", "Memory-Tech"),
            Pair("649", "Hakoniwa Academy Student Council"),
            Pair("653", "tsuritama partners"),
            Pair("655", "Volks"),
            Pair("657", "Lucky Paradise"),
            Pair("661", "Right Gauge"),
            Pair("663", "Dwango Music Entertainment"),
            Pair("665", "chara-ani.com"),
            Pair("667", "AC Create"),
            Pair("675", "Yomiuri Advertising"),
            Pair("677", "Nexon"),
            Pair("679", "Soyuzmultfilm"),
            Pair("681", "ASCII Media Works"),
            Pair("685", "Kadokawa Contents Gate"),
            Pair("687", "Bandai Namco Live Creative"),
            Pair("689", "NTT Docomo"),
            Pair("691", "501st JOINT FIGHTER WING"),
            Pair("693", "BS-TBS"),
            Pair("697", "Natsuiro Kiseki Production Partners"),
            Pair("699", "feng"),
            Pair("701", "seikaisha"),
            Pair("703", "Notes"),
            Pair("705", "Project Railgun"),
            Pair("707", "TMS-Kyokuchi"),
            Pair("709", "PPP"),
            Pair("711", "Delfi Sound"),
            Pair("713", "12 Diary Holders"),
            Pair("715", "Dwango"),
            Pair("717", "TV Tokyo Music"),
            Pair("719", "Studio Mausu"),
            Pair("721", "GANSIS"),
            Pair("723", "Hotline"),
            Pair("727", "Kiyosumi High School Mahjong Club"),
            Pair("729", "Raku High Student Council"),
            Pair("731", "Inu x Boku SS Production Partners"),
            Pair("733", "Viki"),
            Pair("735", "Slowcurve"),
            Pair("737", "Sony Music Communications"),
            Pair("739", "Project IS"),
            Pair("741", "Toshiba Entertainment"),
            Pair("743", "Project Eureka AO"),
            Pair("745", "Cosmic Ray"),
            Pair("747", "Apollon"),
            Pair("751", "Marvelous AQL"),
            Pair("753", "PRA"),
            Pair("755", "Jumondo"),
            Pair("757", "Sony Music Entertainment"),
            Pair("759", "Eye Move"),
            Pair("761", "Sunny Side Up"),
            Pair("763", "Miracle Robo"),
            Pair("765", "Sakura Create"),
            Pair("767", "Majin"),
            Pair("769", "Fuji Pacific Music Publishing"),
            Pair("773", "Peter Pan Creation"),
            Pair("775", "Bushiroad"),
            Pair("777", "Showgate"),
            Pair("779", "AMG MUSIC"),
            Pair("781", "Studio NOA"),
            Pair("783", "GKids"),
            Pair("785", "Advance Syakujii"),
            Pair("787", "Happinet Pictures"),
            Pair("789", "BIGLOBE"),
            Pair("791", "Dentsu Entertainment USA"),
            Pair("793", "Glams"),
            Pair("795", "Yahoo! Japan"),
            Pair("797", "Houbunsha"),
            Pair("799", "indigo line"),
            Pair("801", "Nihikime no Dozeu"),
            Pair("803", "Trigger"),
            Pair("805", "AIC Frontier"),
            Pair("807", "Po10tial"),
            Pair("809", "AKOM"),
            Pair("811", "Hang Zhou StarQ"),
            Pair("813", "SoftCel Pictures"),
            Pair("815", "EMI"),
            Pair("817", "WField"),
            Pair("819", "Next Media Animation"),
            Pair("821", "Cotton Doll"),
            Pair("823", "Lune Pictures"),
            Pair("825", "Fifth Avenue"),
            Pair("827", "Amber Film Works"),
            Pair("829", "Studio Jack"),
            Pair("831", "Otogi Production"),
            Pair("833", "Kyotoma"),
            Pair("835", "UNLIMITED Partners"),
            Pair("839", "LIDENFILMS"),
            Pair("841", "Saban Entertainment"),
            Pair("843", "BS Fuji"),
            Pair("845", "Project No Name"),
            Pair("847", "Senran Kagura Partners"),
            Pair("848", "Kazami Gakuen Koushiki Douga-bu"),
            Pair("850", "Kenji Studio"),
            Pair("852", "Nexus"),
            Pair("854", "Solid Vox"),
            Pair("856", "Charaction"),
            Pair("858", "Wit Studio"),
            Pair("860", "Triple X"),
            Pair("862", "Pashmina"),
            Pair("866", "Fanworks"),
            Pair("870", "Index"),
            Pair("872", "Shingeki no Kyojin Team"),
            Pair("874", "Flex Comics"),
            Pair("876", "G-mode"),
            Pair("878", "An DerCen"),
            Pair("880", "gimik"),
            Pair("882", "Toranoana"),
            Pair("884", "Strawberry Meets Pictures"),
            Pair("886", "Cinema Tohoku"),
            Pair("890", "Karaku"),
            Pair("892", "NOTTV"),
            Pair("894", "Graphinica"),
            Pair("896", "Larx Entertainment"),
            Pair("898", "Xebec Zwei"),
            Pair("899", "Tokyo Animation Film"),
            Pair("901", "Tsubasa Entertainment"),
            Pair("903", "Studio Zealot"),
            Pair("905", "Tokuma Japan"),
            Pair("907", "AYCO"),
            Pair("909", "Studio Kelmadick"),
            Pair("911", "Passione"),
            Pair("913", "Ryukyu Asahi Broadcasting"),
            Pair("917", "Takahashi Studio"),
            Pair("919", "Ankama"),
            Pair("921", "Dynamic Planning"),
            Pair("923", "CyberStep"),
            Pair("925", "Earth Star Entertainment"),
            Pair("929", "Animation Do"),
            Pair("931", "Poncotan"),
            Pair("933", "Carp Studio"),
            Pair("937", "Studio Kaab"),
            Pair("939", "Tama Production"),
            Pair("941", "Iwatobi High School Swimming Club"),
            Pair("945", "Vasoon Animation"),
            Pair("947", "Manga Entertainment"),
            Pair("949", "teamKG"),
            Pair("951", "NAZ"),
            Pair("953", "Soft on Demand"),
            Pair("957", "Connect"),
            Pair("959", "Studio Compile"),
            Pair("961", "Baramiri"),
            Pair("963", "MAGES."),
            Pair("965", "Crimson Star Media"),
            Pair("971", "Anime R"),
            Pair("973", "Studio Liberty"),
            Pair("975", "Angelfish"),
            Pair("977", "Queen Bee"),
            Pair("979", "SPEED"),
            Pair("981", "BOOTLEG"),
            Pair("983", "Daiko"),
            Pair("985", "P Productions"),
            Pair("987", "Creative Bridge"),
            Pair("989", "Nihon Hoso Eigasha"),
            Pair("991", "Hoso Seisaku Doga"),
            Pair("995", "Coamix"),
            Pair("997", "Maxell E-Cube"),
            Pair("999", "Studio Animal"),
            Pair("1001", "Kyodo Eiga"),
            Pair("1003", "Nippon Television Network Corporation"),
            Pair("1005", "Oddjob"),
            Pair("1009", "Aubec"),
            Pair("1011", "Warner Music Japan"),
            Pair("1013", "Opera House"),
            Pair("1015", "T.O Entertainment"),
            Pair("1017", "Liverpool"),
            Pair("1019", "Himeyuri Alumnae Incorporated Foundation"),
            Pair("1021", "ASIA Documentary Productions"),
            Pair("1023", "Polygon Pictures"),
            Pair("1025", "Dongwoo A&E"),
            Pair("1027", "Milkshake"),
            Pair("1029", "BeeWorks"),
            Pair("1031", "Universal Radio Studio"),
            Pair("1033", "Studio Colorido"),
            Pair("1037", "Japan Vistec"),
            Pair("1039", "DIVE II Entertainment"),
            Pair("1041", "Ai Addiction"),
            Pair("1043", "Benesse Corporation"),
            Pair("1045", "Space Neko Company Ltd."),
            Pair("1049", "PoPoCo"),
            Pair("1053", "Production IMS"),
            Pair("1055", "Yamamura Animation, Inc."),
            Pair("1057", "Kyowa Film"),
            Pair("1059", "Studio Nem"),
            Pair("1061", "Project Team Eikyuu Kikan"),
            Pair("1063", "Calf Studio"),
            Pair("1065", "Public & Basic"),
            Pair("1067", "Rising Force"),
            Pair("1071", "Studio Lotus"),
            Pair("1073", "Magic Lantern Film"),
            Pair("1075", "C-Station"),
            Pair("1077", "MMDGP"),
            Pair("1079", "3xCube"),
            Pair("1081", "ZERO-A"),
            Pair("1083", "Aikikaku Center"),
            Pair("1085", "Cosmos"),
            Pair("1087", "Lay-duce"),
            Pair("1089", "Studio Zain"),
            Pair("1091", "Gakken Eigakyoku"),
            Pair("1093", "BreakBottle"),
            Pair("1097", "Namco Bandai Games"),
            Pair("1099", "Cyclone Graphics inc"),
            Pair("1101", "Lambert"),
            Pair("1103", "TROYCA"),
            Pair("1105", "Gendai Production"),
            Pair("1107", "Rabbit Gate"),
            Pair("1109", "Orange"),
            Pair("1111", "DandeLion Animation Studio LLC"),
            Pair("1113", "NBCUniversal Entertainment Japan"),
            Pair("1115", "Studio Korumi"),
            Pair("1117", "1st PLACE"),
            Pair("1119", "Shuka"),
            Pair("1121", "Banpresto"),
            Pair("1123", "Lucent Pictures Entertainment"),
            Pair("1127", "Studio 3Hz"),
            Pair("1129", "Pierrot Plus"),
            Pair("1131", "Zero-G Room"),
            Pair("1133", "dwarf"),
            Pair("1135", "FOREST Hunting One"),
            Pair("1137", "SEK Studios"),
            Pair("1139", "BEAM Entertainment"),
            Pair("1141", "Comstock, Ltd."),
            Pair("1143", "TOHO animation"),
            Pair("1147", "Shinano Kikaku"),
            Pair("1149", "Studio Cab"),
            Pair("1151", "Sanrio Digital"),
            Pair("1153", "Image Kei"),
            Pair("1155", "Studio Moriken"),
            Pair("1157", "Big Bang"),
            Pair("1159", "King Bee"),
            Pair("1161", "Allure"),
            Pair("1163", "Flatiron Film Company"),
            Pair("1165", "Tri-Slash"),
            Pair("1167", "Nikkatsu Mukojima"),
            Pair("1169", "ILCA"),
            Pair("1171", "Olive Studio"),
            Pair("1173", "Studio Dadashow"),
            Pair("1175", "Atelier Musa"),
            Pair("1177", "Geijutsu Eigasha"),
            Pair("1179", "MK Pictures"),
            Pair("1181", "RG Animation Studios"),
            Pair("1185", "81 Produce"),
            Pair("1187", "Ripple Film"),
            Pair("1189", "Sola Digital Arts"),
            Pair("1191", "Azeta Pictures"),
            Pair("1193", "MooGoo"),
            Pair("1195", "Creators in Pack"),
            Pair("1199", "L."),
            Pair("1201", "Ponycan USA"),
            Pair("1203", "Studio 1st"),
            Pair("1207", "Comic Umenohone"),
            Pair("1209", "Studio A-CAT"),
            Pair("1211", "Tokyo MX"),
            Pair("1213", "Mobcast"),
            Pair("1215", "Daiichikosho"),
            Pair("1217", "HeART-BIT"),
            Pair("1219", "Hokkaido Azmacy"),
            Pair("1221", "Hokkaido Cultural Broadcasting"),
            Pair("1223", "Teichiku Entertainment"),
            Pair("1225", "Age Global Networks"),
            Pair("1227", "Studio GDW"),
            Pair("1229", "Pie in The Sky"),
            Pair("1231", "OLM Digital"),
            Pair("1233", "Bandai Namco Entertainment"),
            Pair("1235", "I was a Ballerina"),
            Pair("1237", "Millepensee"),
            Pair("1239", "KeyEast"),
            Pair("1241", "Evil Line Records"),
            Pair("1242", "Sakura Color Film"),
            Pair("1243", "AniMan"),
            Pair("1244", "Studio VOLN"),
            Pair("1245", "ZIZ Entertainment (ZIZ)"),
            Pair("1246", "AIR AGENCY"),
            Pair("1247", "Mistral Japan"),
            Pair("1248", "Studio Mirai"),
            Pair("1249", "Mirai Film"),
            Pair("1250", "The National Film Center Japan"),
            Pair("1251", "Dentsu Eigasha Tokyo"),
            Pair("1252", "Studio Binzo"),
            Pair("1253", "Studio GOONEYS"),
            Pair("1254", "Grooove"),
            Pair("1255", "Glovision"),
            Pair("1256", "Harappa"),
            Pair("1257", "A-Real"),
            Pair("1258", "Bandai Namco Pictures"),
            Pair("1259", "Studio Curtain"),
            Pair("1260", "Nakamura Production"),
            Pair("1261", "Good Smile Company"),
            Pair("1263", "Dynamo Pictures"),
            Pair("1264", "EMT²"),
            Pair("1265", "Tomovies"),
            Pair("1266", "Studio! Cucuri"),
            Pair("1268", "L²Studio"),
            Pair("1269", "K-Factory"),
            Pair("1270", "Sanctuary"),
            Pair("1271", "Assez Finaud Fabric"),
            Pair("1273", "Osaka University of Arts"),
            Pair("1276", "HS Pictures Studio"),
            Pair("1277", "Imagica West"),
            Pair("1278", "Signal. MD"),
            Pair("1279", "Buemon"),
            Pair("1280", "Media Castle"),
            Pair("1281", "Office DCI"),
            Pair("1282", "Arcturus"),
            Pair("1283", "TC Entertainment"),
            Pair("1284", "Avex Pictures"),
            Pair("1285", "Being"),
            Pair("1286", "10Gauge"),
            Pair("1287", "Q-Tec"),
            Pair("1288", "Chrono Gear Creative"),
            Pair("1289", "F.M.F"),
            Pair("1290", "Pollyanna Graphics"),
            Pair("1291", "KOO-KI"),
            Pair("1292", "TUBA"),
            Pair("1293", "Romantica club !!"),
            Pair("1294", "Studio Don Juan"),
            Pair("1295", "Pine Jam"),
            Pair("1296", "Marza Animation Planet"),
            Pair("1298", "Sakura Motion Picture"),
            Pair("1299", "AXsiZ"),
            Pair("1300", "Office Nobu"),
            Pair("1301", "CCTV Animation Co. LTD"),
            Pair("1302", "RoiVisual"),
            Pair("1303", "PansonWorks"),
            Pair("1304", "Qualia Animation"),
            Pair("1305", "Milestone Music Publishing"),
            Pair("1306", "AIC Classic"),
            Pair("1307", "Free-Will"),
            Pair("1308", "SEDIC International"),
            Pair("1309", "Lawson HMV Entertainment"),
            Pair("1310", "Hiroshi Planning"),
            Pair("1311", "Sankyo Planning"),
            Pair("1312", "Tokyu Recreation"),
            Pair("1313", "Amuse"),
            Pair("1314", "Fukushima Gainax"),
            Pair("1315", "Fujiko F. Fujio Pro"),
            Pair("1316", "Trans Cosmos"),
            Pair("1317", "Production GoodBook"),
            Pair("1318", "Asahi Shimbun"),
            Pair("1319", "Tokyo Theatres Company"),
            Pair("1320", "Joker Films"),
            Pair("1322", "Creative Power Entertaining"),
            Pair("1323", "Saban Brands"),
            Pair("1324", "Shimogumi"),
            Pair("1325", "Haoliners Animation League"),
            Pair("1326", "Bitgang"),
            Pair("1327", "White Bear"),
            Pair("1328", "Decovocal"),
            Pair("1329", "AQUAPLUS"),
            Pair("1330", "ensky"),
            Pair("1331", "i0+"),
            Pair("1332", "famima.com"),
            Pair("1333", "Hakuhodo DY Music & Pictures"),
            Pair("1334", "Docomo Anime Store"),
            Pair("1335", "TEAM Entertainment Inc."),
            Pair("1336", "Chugai Mining Co., Ltd."),
            Pair("1337", "Medicos Entertainment"),
            Pair("1338", "Diabolik Lovers MB Project"),
            Pair("1341", "Beijing Sunchime Happy Culture Company"),
            Pair("1343", "Space Shower Music"),
            Pair("1344", "King Records"),
            Pair("1345", "Sammy"),
            Pair("1346", "Kinoshita Koumuten"),
            Pair("1347", "Hobi Animation"),
            Pair("1348", "Sugar Boy"),
            Pair("1349", "Tencent Animation"),
            Pair("1350", "G.CMay Animation & Film"),
            Pair("1351", "EDGE"),
            Pair("1352", "Studio Ten Carat"),
            Pair("1353", "Issen"),
            Pair("1354", "Penta Show Studios"),
            Pair("1355", "TV Aichi"),
            Pair("1356", "Tonko House"),
            Pair("1357", "Craftar"),
            Pair("1358", "Fields"),
            Pair("1359", "Shizuoka Broadcasting System"),
            Pair("1360", "Hoods Drifters Studio"),
            Pair("1361", "Darts"),
            Pair("1362", "Rabbit Machine"),
            Pair("1363", "Marine Entertainment"),
            Pair("1364", "Super Techno Arts"),
            Pair("1365", "Shueisha"),
            Pair("1366", "Nagoya TV Housou"),
            Pair("1368", "Kazuki Production"),
            Pair("1369", "G-Lam"),
            Pair("1370", "Sprite Animation Studios"),
            Pair("1371", "T.P.O"),
            Pair("1372", "SOEISHINSHA"),
            Pair("1373", "Akita Shoten"),
            Pair("1374", "Office Takeout"),
            Pair("1375", "Studio Jam"),
            Pair("1376", "ZOOM ENTERPRISE"),
            Pair("1377", "Futabasha"),
            Pair("1378", "Media Rings"),
            Pair("1379", "Zero-G"),
            Pair("1380", "domerica"),
            Pair("1381", "GEMBA"),
            Pair("1382", "Piko Studio"),
            Pair("1383", "Studio Live"),
            Pair("1384", "CinePix"),
            Pair("1385", "Blue Cat"),
            Pair("1386", "Infinite"),
            Pair("1387", "Neft Film"),
            Pair("1389", "Frencel"),
            Pair("1391", "SPO Entertainment"),
            Pair("1392", "Zack Promotion"),
            Pair("1393", "Geno Studio"),
            Pair("1394", "RightTracks"),
            Pair("1395", "Clarion"),
            Pair("1396", "W-Toon Studio"),
            Pair("1397", "Universal Music Japan"),
            Pair("1398", "Akabanten"),
            Pair("1399", "Asura Film"),
            Pair("1400", "Walkers Company"),
            Pair("1401", "Amgakuin"),
            Pair("1403", "Meiji Seika"),
            Pair("1404", "PSG"),
            Pair("1405", "Chuubu Nihon Kyouei"),
            Pair("1406", "Miracle Bus"),
            Pair("1408", "Lastrum Music"),
            Pair("1409", "Monomusik"),
            Pair("1410", "Rambling Records"),
            Pair("1411", "Kyoraku Industrial Holdings"),
            Pair("1412", "Kansai Telecasting Corporation"),
            Pair("1414", "bilibili"),
            Pair("1415", "Asahi Broadcasting Corporation"),
            Pair("1416", "BS11"),
            Pair("1417", "RAB Aomori Broadcasting Corporation"),
            Pair("1418", "Nippon Television Music Corporation"),
            Pair("1419", "GARDEN LODGE"),
            Pair("1420", "SIDO LIMITED"),
            Pair("1421", "Takara Tomy A.R.T.S"),
            Pair("1422", "CyberAgent"),
            Pair("1423", "Forecast Communications"),
            Pair("1424", "Media Bank"),
            Pair("1425", "5pb."),
            Pair("1426", "Studio Meditation With a Pencil"),
            Pair("1427", "EBS"),
            Pair("1428", "Level-5"),
            Pair("1429", "Azumaker"),
            Pair("1430", "Shogakukan"),
            Pair("1431", "Yaoqi"),
            Pair("1432", "Bishop"),
            Pair("1433", "Ekura Animal"),
            Pair("1435", "JCF"),
            Pair("1436", "Sting Ray"),
            Pair("1437", "Ishimori Entertainment"),
            Pair("1438", "Medicrie"),
            Pair("1439", "Digiturbo"),
            Pair("1440", "Felix Film"),
            Pair("1441", "Mippei Eigeki Kiryuukan"),
            Pair("1442", "Mook DLE"),
            Pair("1443", "Overlap"),
            Pair("1444", "Egg Firm"),
            Pair("1445", "Arcs Create"),
            Pair("1446", "NEC Avenue"),
            Pair("1447", "Urban Vision"),
            Pair("1448", "Network"),
            Pair("1449", "Animatic"),
            Pair("1450", "Universal Pictures Japan"),
            Pair("1451", "TYO"),
            Pair("1452", "Mag Garden"),
            Pair("1454", "REALTHING"),
            Pair("1455", "Tokai Television"),
            Pair("1456", "Beijing Huihuang Animation Company"),
            Pair("1457", "Hisashishi Videos"),
            Pair("1458", "TOMY Company"),
            Pair("1459", "Geneon Entertainment USA"),
            Pair("1460", "Coastline Animation Studio"),
            Pair("1461", "Audio Tanaka"),
            Pair("1462", "B&T"),
            Pair("1463", "Anime Antenna Iinkai"),
            Pair("1464", "Hiro Media"),
            Pair("1465", "Enlight Pictures"),
            Pair("1466", "Bandai Visual USA"),
            Pair("1467", "Pied Piper"),
            Pair("1468", "Crunchyroll"),
            Pair("1469", "BS Japan"),
            Pair("1470", "Konami Digital Entertainment"),
            Pair("1471", "Platinum Vision"),
            Pair("1472", "Myung Films"),
            Pair("1473", "Odolttogi"),
            Pair("1474", "Synch-Point"),
            Pair("1476", "Shochiku Animation Institute"),
            Pair("1477", "Ministry of the Navy"),
            Pair("1478", "Pencil"),
            Pair("1479", "Studio Core"),
            Pair("1480", "CBS"),
            Pair("1481", "comico"),
            Pair("1483", "Fuji&gumi Games"),
            Pair("1484", "Cinelicious Pics"),
            Pair("1485", "Light Chaser Animation Studios"),
            Pair("1486", "eigoMANGA"),
            Pair("1487", "Bouncy"),
            Pair("1488", "Hakuhodo DY Media Partners"),
        )
    }
}
