package mdb_test

import (
	_ "embed"
	"testing"

	"git.sunturtle.xyz/zephyr/horse"
	"git.sunturtle.xyz/zephyr/horse/mdb"
	"github.com/google/go-cmp/cmp"
)

//go:embed testdata/support.sql
var supportSQL string

func TestSupportCards(t *testing.T) {
	db := testdb(t.Context(), "file:TestSupportCards?mode=memory&cache=shared", supportSQL)
	got, err := mdb.SupportCards(t.Context(), db)
	if err != nil {
		t.Error(err)
	}
	want := []horse.SupportCard{
		{
			ID:          10001,
			Name:        "[Tracen Academy] Special Week",
			CharacterID: 1001,
			CharaName:   "Special Week",
			Rarity:      horse.R,
			Specialty:   horse.SupportCardGuts,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				// https://go.dev/play/p/W5nkR2Tw30h
				{{Type: 1, Value: 5}, {Type: 2, Value: 10}, {Type: 5, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: 10}, {Type: 17, Value: 1}, {Type: 18, Value: 5}, {Type: 19, Value: 5}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: 15}, {Type: 17, Value: 1}, {Type: 18, Value: 20}, {Type: 19, Value: 20}},
				{{Type: 1, Value: 10}, {Type: 2, Value: 25}, {Type: 5, Value: -1}, {Type: 14, Value: 15}, {Type: 17, Value: 1}, {Type: 18, Value: 20}, {Type: 19, Value: 20}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 15}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: 20}, {Type: 17, Value: 2}, {Type: 18, Value: 30}, {Type: 19, Value: 35}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 35}, {Type: 5, Value: 1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
			},
			UniqueEffect: nil,
			Hints: []horse.Hint{
				{SkillID: 200162},
				{SkillID: 200232},
				{SkillID: 200512},
				{SkillID: 200612},
				{SkillID: 200732},
				{SkillID: 201352},
				{SkillID: 201542},
				{Speed: 1, Power: 1, Guts: 6},
			},
			Outings: 0,
		},
		{
			ID:          10002,
			Name:        "[Tracen Academy] Silence Suzuka",
			CharacterID: 1002,
			CharaName:   "Silence Suzuka",
			Rarity:      horse.R,
			Specialty:   horse.SupportCardSpeed,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 5}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: 5}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 10}, {Type: 14, Value: 10}, {Type: 15, Value: 1}, {Type: 16, Value: 1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 15}, {Type: 14, Value: 15}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: 15}, {Type: 2, Value: 15}, {Type: 14, Value: 15}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 19, Value: 35}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 25}, {Type: 14, Value: 20}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: 20}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: 50}, {Type: 30, Value: 1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
			},
			UniqueEffect: nil,
			Hints: []horse.Hint{
				{SkillID: 200432},
				{SkillID: 200532},
				{SkillID: 200542},
				{SkillID: 200552},
				{SkillID: 200712},
				{SkillID: 201242},
				{SkillID: 201252},
				{SkillID: 201522},
				{SkillID: 201272},
				{Speed: 6, Power: 2},
			},
			Outings: 0,
		},
		{
			ID:          10021,
			Name:        "[Tracen Academy] Tazuna Hayakawa",
			CharacterID: 9001,
			CharaName:   "Tazuna Hayakawa",
			Rarity:      horse.R,
			Specialty:   horse.SupportCardNone,
			Type:        horse.SupportCardPal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 8, Value: -1}, {Type: 14, Value: 10}, {Type: 25, Value: 10}, {Type: 26, Value: 10}, {Type: 27, Value: 5}, {Type: 28, Value: 1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: 20}, {Type: 25, Value: 30}, {Type: 26, Value: 20}, {Type: 27, Value: 15}, {Type: 28, Value: 10}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: 5}, {Type: 14, Value: 25}, {Type: 25, Value: 40}, {Type: 26, Value: 25}, {Type: 27, Value: 20}, {Type: 28, Value: 15}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
			},
			UniqueEffect: nil,
			Hints:        nil,
			Outings:      5,
		},
		{
			ID:          20043,
			Name:        "[At the End of the Day] Special Week",
			CharacterID: 1001,
			CharaName:   "Special Week",
			Rarity:      horse.SR,
			Specialty:   horse.SupportCardPower,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: 1}, {Type: 18, Value: 5}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 10}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 20}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: 20}, {Type: 2, Value: 20}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 17, Value: 2}, {Type: 18, Value: 30}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: 10}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 30}, {Type: 4, Value: -1}, {Type: 10, Value: 20}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
				{{Type: 1, Value: 25}, {Type: 2, Value: -1}, {Type: 4, Value: 1}, {Type: 10, Value: -1}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 17, Value: 2}, {Type: 18, Value: 40}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "At the End of the Day",
				Desc:        "Training Effectiveness and Initial Power",
				CardLevel:   35,
				Type:        8,
				Args:        []int32{5},
				Type2:       11,
				Args2:       []int32{20},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200162},
				{SkillID: 200512},
				{SkillID: 200562},
				{SkillID: 200732},
				{SkillID: 201312},
				{SkillID: 201352},
				{SkillID: 201362},
				{Stamina: 2, Power: 6},
			},
			Outings: 0,
		},
		{
			ID:          30001,
			Name:        "[The Brightest Star in Japan!] Special Week",
			CharacterID: 1001,
			CharaName:   "Special Week",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardGuts,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: 10}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: 10}, {Type: 17, Value: 1}, {Type: 18, Value: 5}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: 5}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 15}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: 20}, {Type: 17, Value: 2}, {Type: 18, Value: 30}, {Type: 19, Value: 20}},
				{{Type: 1, Value: 15}, {Type: 2, Value: 40}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: 20}, {Type: 17, Value: 2}, {Type: 18, Value: 30}, {Type: 19, Value: 20}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: 1}, {Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 20}, {Type: 2, Value: -1}, {Type: 5, Value: -1}, {Type: 8, Value: 5}, {Type: 14, Value: 25}, {Type: 17, Value: 2}, {Type: 18, Value: 40}, {Type: 19, Value: 35}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 60}, {Type: 5, Value: -1}, {Type: 8, Value: 10}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "The Brightest Star in Japan!",
				Desc:        "Guts Bonus and Initial Guts",
				CardLevel:   30,
				Type:        6,
				Args:        []int32{1},
				Type2:       12,
				Args2:       []int32{20},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200162},
				{SkillID: 200232},
				{SkillID: 200512},
				{SkillID: 200612},
				{SkillID: 200732},
				{SkillID: 201352},
				{SkillID: 201542},
				{Speed: 1, Power: 1, Guts: 6},
			},
			Outings: 0,
		},
		{
			ID:          30002,
			Name:        "[Beyond This Shining Moment] Silence Suzuka",
			CharacterID: 1002,
			CharaName:   "Silence Suzuka",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardSpeed,
			Type:        horse.SupportCardNormal,
			Effects: [11][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: 5}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 10}, {Type: 9, Value: -1}, {Type: 14, Value: 10}, {Type: 15, Value: 1}, {Type: 16, Value: 1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 30}, {Type: 9, Value: -1}, {Type: 14, Value: 20}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: 25}, {Type: 2, Value: 30}, {Type: 9, Value: -1}, {Type: 14, Value: 20}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 19, Value: 50}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: 1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 40}, {Type: 9, Value: 15}, {Type: 14, Value: 25}, {Type: 15, Value: 5}, {Type: 16, Value: 15}, {Type: 19, Value: -1}, {Type: 30, Value: -1}},
				{{Type: 1, Value: 35}, {Type: 2, Value: -1}, {Type: 9, Value: 30}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: 65}, {Type: 30, Value: -1}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "Beyond This Shining Moment",
				Desc:        "Mood Effect and Hint Frequency",
				CardLevel:   30,
				Type:        2,
				Args:        []int32{15},
				Type2:       18,
				Args2:       []int32{20},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200432},
				{SkillID: 200532},
				{SkillID: 200542},
				{SkillID: 200552},
				{SkillID: 200712},
				{SkillID: 201242},
				{SkillID: 201252},
				{SkillID: 201522},
				{SkillID: 201272},
				{Speed: 6, Power: 2},
			},
			Outings: 0,
		},
		{
			ID:          30021,
			Name:        "[Tracen Reception] Tazuna Hayakawa",
			CharacterID: 9001,
			CharaName:   "Tazuna Hayakawa",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardNone,
			Type:        horse.SupportCardPal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: 10}, {Type: 25, Value: 10}, {Type: 26, Value: 10}, {Type: 27, Value: 5}, {Type: 28, Value: 1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: -1}, {Type: 14, Value: 25}, {Type: 25, Value: 40}, {Type: 26, Value: 25}, {Type: 27, Value: 20}, {Type: 28, Value: 15}},
				{{Type: 8, Value: 5}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: 10}, {Type: 9, Value: -1}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: 15}, {Type: 14, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 27, Value: -1}, {Type: 28, Value: -1}},
				{{Type: 8, Value: -1}, {Type: 9, Value: 30}, {Type: 14, Value: 30}, {Type: 25, Value: 60}, {Type: 26, Value: 35}, {Type: 27, Value: 30}, {Type: 28, Value: 25}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "Tracen Reception",
				Desc:        "Failure Protection and Energy Cost Reduction",
				CardLevel:   30,
				Type:        27,
				Args:        []int32{10},
				Type2:       28,
				Args2:       []int32{5},
				IdleSubRate: 0,
			},
			Hints:   nil,
			Outings: 5,
		},
		{
			ID:          30025,
			Name:        "[The Setting Sun and Rising Stars] Special Week",
			CharacterID: 1001,
			CharaName:   "Special Week",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardSpeed,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: 1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 10}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 20}, {Type: 3, Value: -1}, {Type: 14, Value: 5}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 25}, {Type: 2, Value: 20}, {Type: 3, Value: -1}, {Type: 14, Value: 5}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: 1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 30}, {Type: 3, Value: -1}, {Type: 14, Value: 10}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 19, Value: 15}},
				{{Type: 1, Value: 35}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: 30}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "The Setting Sun and Rising Stars",
				Desc:        "Training Effectiveness and Race Bonus",
				CardLevel:   40,
				Type:        8,
				Args:        []int32{5},
				Type2:       15,
				Args2:       []int32{5},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200162},
				{SkillID: 200232},
				{SkillID: 200512},
				{SkillID: 200612},
				{SkillID: 200732},
				{SkillID: 201352},
				{SkillID: 201542},
				{Speed: 6, Power: 2},
			},
			Outings: 0,
		},
		{
			ID:          30062,
			Name:        "[Winning Dream] Silence Suzuka",
			CharacterID: 1002,
			CharaName:   "Silence Suzuka",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardStamina,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: 10}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 10}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 1}, {Type: 19, Value: 5}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 20}, {Type: 2, Value: 20}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 19, Value: 20}},
				{{Type: 1, Value: 20}, {Type: 2, Value: 20}, {Type: 4, Value: -1}, {Type: 10, Value: 25}, {Type: 14, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 19, Value: 20}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: 1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 25}, {Type: 2, Value: 30}, {Type: 4, Value: -1}, {Type: 10, Value: -1}, {Type: 14, Value: 15}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 19, Value: 35}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 4, Value: -1}, {Type: 10, Value: 35}, {Type: 14, Value: 30}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 19, Value: -1}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "Winning Dream",
				Desc:        "Training Effectiveness and Initial Stamina",
				CardLevel:   40,
				Type:        8,
				Args:        []int32{5},
				Type2:       10,
				Args2:       []int32{20},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200432},
				{SkillID: 200532},
				{SkillID: 200542},
				{SkillID: 200552},
				{SkillID: 200712},
				{SkillID: 201242},
				{SkillID: 201252},
				{SkillID: 201522},
				{SkillID: 201272},
				{Stamina: 6, Guts: 2},
			},
			Outings: 0,
		},
		{
			ID:          30076,
			Name:        "[Searching for Unseen Sights] Silence Suzuka",
			CharacterID: 1002,
			CharaName:   "Silence Suzuka",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardSpeed,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: 5}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: 5}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: 1}, {Type: 18, Value: 5}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 20}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: 1}, {Type: 18, Value: 20}, {Type: 19, Value: 35}},
				{{Type: 1, Value: 20}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: 10}, {Type: 17, Value: 1}, {Type: 18, Value: 20}, {Type: 19, Value: 35}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: 1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 25}, {Type: 2, Value: 15}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: 50}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 30}, {Type: 3, Value: -1}, {Type: 14, Value: -1}, {Type: 17, Value: 2}, {Type: 18, Value: 30}, {Type: 19, Value: -1}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "Searching for Unseen Sights",
				Desc:        "Training Effectiveness and Race Bonus",
				CardLevel:   40,
				Type:        8,
				Args:        []int32{5},
				Type2:       15,
				Args2:       []int32{5},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200432},
				{SkillID: 200532},
				{SkillID: 200542},
				{SkillID: 200552},
				{SkillID: 200712},
				{SkillID: 201242},
				{SkillID: 201252},
				{SkillID: 201522},
				{SkillID: 201272},
				{Speed: 6, Power: 2},
			},
			Outings: 0,
		},
		{
			ID:          30081,
			Name:        "[Passing the Dream On] Team Sirius",
			CharacterID: 1001,
			CharaName:   "Team Sirius",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardNone,
			Type:        horse.SupportCardGroup,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 5}, {Type: 2, Value: 10}, {Type: 12, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: -1}, {Type: 31, Value: 1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: -1}, {Type: 31, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: -1}, {Type: 31, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: 10}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: 10}, {Type: 26, Value: 10}, {Type: 30, Value: -1}, {Type: 31, Value: 1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: -1}, {Type: 31, Value: -1}},
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: 15}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 25, Value: 20}, {Type: 26, Value: 15}, {Type: 30, Value: -1}, {Type: 31, Value: 1}},
				{{Type: 1, Value: 10}, {Type: 2, Value: 15}, {Type: 12, Value: -1}, {Type: 14, Value: 15}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 25, Value: 20}, {Type: 26, Value: 15}, {Type: 30, Value: -1}, {Type: 31, Value: 1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: 1}, {Type: 31, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: -1}, {Type: 31, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 12, Value: 15}, {Type: 14, Value: 20}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 25, Value: 30}, {Type: 26, Value: 20}, {Type: 30, Value: -1}, {Type: 31, Value: -1}},
				{{Type: 1, Value: 15}, {Type: 2, Value: 20}, {Type: 12, Value: 30}, {Type: 14, Value: -1}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 25, Value: -1}, {Type: 26, Value: -1}, {Type: 30, Value: -1}, {Type: 31, Value: 2}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "Passing the Dream On",
				Desc:        "Training Effectiveness (Friendship Gauge 80+)",
				CardLevel:   40,
				Type:        101,
				Args:        []int32{80, 8, 10},
				Type2:       0,
				Args2:       []int32{},
				IdleSubRate: 20,
			},
			Hints:   nil,
			Outings: 1,
		},
		{
			ID:          30105,
			Name:        "[Take Hold of Our Dreams!] Special Week",
			CharacterID: 1001,
			CharaName:   "Special Week",
			Rarity:      horse.SSR,
			Specialty:   horse.SupportCardGuts,
			Type:        horse.SupportCardNormal,
			Effects: [...][]horse.SupportCardEffect{
				{{Type: 1, Value: 10}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: -1}, {Type: 11, Value: 10}, {Type: 14, Value: 10}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: -1}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: -1}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: 1}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 1}, {Type: 17, Value: 1}, {Type: 18, Value: 5}, {Type: 19, Value: 5}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: -1}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 20}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: 5}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 17, Value: 1}, {Type: 18, Value: 20}, {Type: 19, Value: 20}},
				{{Type: 1, Value: 20}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: 5}, {Type: 11, Value: 25}, {Type: 14, Value: 25}, {Type: 15, Value: 1}, {Type: 16, Value: 5}, {Type: 17, Value: 1}, {Type: 18, Value: 20}, {Type: 19, Value: 20}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 6, Value: 1}, {Type: 8, Value: -1}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: -1}, {Type: 2, Value: -1}, {Type: 6, Value: -1}, {Type: 8, Value: -1}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
				{{Type: 1, Value: 25}, {Type: 2, Value: 15}, {Type: 6, Value: -1}, {Type: 8, Value: 5}, {Type: 11, Value: -1}, {Type: 14, Value: -1}, {Type: 15, Value: 5}, {Type: 16, Value: 10}, {Type: 17, Value: 2}, {Type: 18, Value: 30}, {Type: 19, Value: 35}},
				{{Type: 1, Value: -1}, {Type: 2, Value: 30}, {Type: 6, Value: -1}, {Type: 8, Value: -1}, {Type: 11, Value: 35}, {Type: 14, Value: 30}, {Type: 15, Value: -1}, {Type: 16, Value: -1}, {Type: 17, Value: -1}, {Type: 18, Value: -1}, {Type: 19, Value: -1}},
			},
			UniqueEffect: &horse.UniqueEffect{
				Name:        "Take Hold of Our Dreams!",
				Desc:        "Power Bonus and Initial Friendship Gauge",
				CardLevel:   40,
				Type:        5,
				Args:        []int32{1},
				Type2:       14,
				Args2:       []int32{15},
				IdleSubRate: 0,
			},
			Hints: []horse.Hint{
				{SkillID: 200012},
				{SkillID: 200042},
				{SkillID: 200142},
				{SkillID: 200202},
				{SkillID: 201172},
				{SkillID: 201212},
				{Speed: 1, Power: 1, Guts: 6},
			},
			Outings: 0,
		},
	}
	if diff := cmp.Diff(want, got); diff != "" {
		t.Errorf("wrong support cards (+got/-want):\n%s", diff)
	}
}
