/*
  * DO NOT EDIT - This file is automatically generated.
  */
static unsigned char seqprog[] = {
	0xff, 0x6a, 0x06, 0x08,
	0x7f, 0x02, 0x04, 0x08,
	0x12, 0x6a, 0x00, 0x00,
	0xff, 0x6a, 0xd6, 0x09,
	0xff, 0x6a, 0xdc, 0x09,
	0x00, 0x65, 0xca, 0x58,
	0xf7, 0x01, 0x02, 0x08,
	0xff, 0x4e, 0xc8, 0x08,
	0xbf, 0x60, 0xc0, 0x08,
	0x60, 0x0b, 0x86, 0x68,
	0x40, 0x00, 0x0c, 0x68,
	0x08, 0x1f, 0x3e, 0x10,
	0x60, 0x0b, 0x86, 0x68,
	0x40, 0x00, 0x0c, 0x68,
	0x08, 0x1f, 0x3e, 0x10,
	0xff, 0x3e, 0x48, 0x60,
	0x40, 0xfa, 0x10, 0x78,
	0xff, 0xf6, 0xd4, 0x08,
	0x01, 0x4e, 0x9c, 0x18,
	0x40, 0x60, 0xc0, 0x00,
	0x00, 0x4d, 0x10, 0x70,
	0x01, 0x4e, 0x9c, 0x18,
	0xbf, 0x60, 0xc0, 0x08,
	0x00, 0x6a, 0x86, 0x5c,
	0xff, 0x4e, 0xc8, 0x18,
	0x02, 0x6a, 0x70, 0x5b,
	0xff, 0x52, 0x20, 0x09,
	0x0d, 0x6a, 0x6a, 0x00,
	0x00, 0x52, 0xe6, 0x5b,
	0x03, 0xb0, 0x52, 0x31,
	0xff, 0xb0, 0x52, 0x09,
	0xff, 0xb1, 0x54, 0x09,
	0xff, 0xb2, 0x56, 0x09,
	0xff, 0xa3, 0x50, 0x09,
	0xff, 0x3e, 0x74, 0x09,
	0xff, 0x90, 0x7c, 0x08,
	0xff, 0x3e, 0x20, 0x09,
	0x00, 0x65, 0x4e, 0x58,
	0x00, 0x65, 0x0c, 0x40,
	0xf7, 0x1f, 0xca, 0x08,
	0x08, 0xa1, 0xc8, 0x08,
	0x00, 0x65, 0xca, 0x00,
	0xff, 0x65, 0x3e, 0x08,
	0xf0, 0xa1, 0xc8, 0x08,
	0x0f, 0x0f, 0x1e, 0x08,
	0x00, 0x0f, 0x1e, 0x00,
	0xf0, 0xa1, 0xc8, 0x08,
	0x0f, 0x05, 0x0a, 0x08,
	0x00, 0x05, 0x0a, 0x00,
	0xff, 0x6a, 0x0c, 0x08,
	0x5a, 0x6a, 0x00, 0x04,
	0x12, 0x65, 0x02, 0x00,
	0x31, 0x6a, 0xca, 0x00,
	0x80, 0x37, 0x6e, 0x68,
	0xff, 0x65, 0xca, 0x18,
	0xff, 0x37, 0xdc, 0x08,
	0xff, 0x6e, 0xc8, 0x08,
	0x00, 0x6c, 0x76, 0x78,
	0x20, 0x01, 0x02, 0x00,
	0x4c, 0x37, 0xc8, 0x28,
	0x08, 0x1f, 0x7e, 0x78,
	0x08, 0x37, 0x6e, 0x00,
	0x08, 0x64, 0xc8, 0x00,
	0x70, 0x64, 0xca, 0x18,
	0xff, 0x6c, 0x0a, 0x08,
	0x20, 0x64, 0xca, 0x18,
	0xff, 0x6c, 0x08, 0x0c,
	0x40, 0x0b, 0x96, 0x68,
	0x20, 0x6a, 0x16, 0x00,
	0xf0, 0x19, 0x6e, 0x08,
	0x08, 0x6a, 0x18, 0x00,
	0x08, 0x11, 0x22, 0x00,
	0x08, 0x6a, 0x66, 0x58,
	0x08, 0x6a, 0x68, 0x00,
	0x00, 0x65, 0xaa, 0x40,
	0x12, 0x6a, 0x00, 0x00,
	0x40, 0x6a, 0x16, 0x00,
	0xff, 0x3e, 0x20, 0x09,
	0xff, 0xba, 0x7c, 0x08,
	0xff, 0xa1, 0x6e, 0x08,
	0x08, 0x6a, 0x18, 0x00,
	0x08, 0x11, 0x22, 0x00,
	0x08, 0x6a, 0x66, 0x58,
	0x80, 0x6a, 0x68, 0x00,
	0x80, 0x36, 0x6c, 0x00,
	0x00, 0x65, 0xba, 0x5b,
	0xff, 0x3d, 0xc8, 0x08,
	0xbf, 0x64, 0xe2, 0x78,
	0x80, 0x64, 0xc8, 0x71,
	0xa0, 0x64, 0xf8, 0x71,
	0xc0, 0x64, 0xf0, 0x71,
	0xe0, 0x64, 0x38, 0x72,
	0x01, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0xaa, 0x40,
	0xf7, 0x11, 0x22, 0x08,
	0x00, 0x65, 0xca, 0x58,
	0xff, 0x06, 0xd4, 0x08,
	0xf7, 0x01, 0x02, 0x08,
	0x09, 0x0c, 0xc4, 0x78,
	0x08, 0x0c, 0x0c, 0x68,
	0x01, 0x6a, 0x22, 0x01,
	0xff, 0x6a, 0x26, 0x09,
	0x02, 0x6a, 0x08, 0x30,
	0xff, 0x6a, 0x08, 0x08,
	0xdf, 0x01, 0x02, 0x08,
	0x01, 0x6a, 0x7a, 0x00,
	0xff, 0x6a, 0x6c, 0x0c,
	0x04, 0x14, 0x10, 0x31,
	0x03, 0xa9, 0x18, 0x31,
	0x03, 0xa9, 0x10, 0x30,
	0x08, 0x6a, 0xcc, 0x00,
	0xa9, 0x6a, 0xd0, 0x5b,
	0x00, 0x65, 0x02, 0x41,
	0xa8, 0x6a, 0x6a, 0x00,
	0x79, 0x6a, 0x6a, 0x00,
	0x40, 0x3d, 0xea, 0x68,
	0x04, 0x35, 0x6a, 0x00,
	0x00, 0x65, 0x2a, 0x5b,
	0x80, 0x6a, 0xd4, 0x01,
	0x10, 0x36, 0xd6, 0x68,
	0x10, 0x36, 0x6c, 0x00,
	0x07, 0xac, 0x10, 0x31,
	0x05, 0xa3, 0x70, 0x30,
	0x03, 0x8c, 0x10, 0x30,
	0x88, 0x6a, 0xcc, 0x00,
	0xac, 0x6a, 0xc8, 0x5b,
	0x00, 0x65, 0xc2, 0x5b,
	0x38, 0x6a, 0xcc, 0x00,
	0xa3, 0x6a, 0xcc, 0x5b,
	0xff, 0x38, 0x12, 0x69,
	0x80, 0x02, 0x04, 0x00,
	0xe7, 0x35, 0x6a, 0x08,
	0x03, 0x69, 0x18, 0x31,
	0x03, 0x69, 0x10, 0x30,
	0xff, 0x6a, 0x10, 0x00,
	0xff, 0x6a, 0x12, 0x00,
	0xff, 0x6a, 0x14, 0x00,
	0x22, 0x38, 0xc8, 0x28,
	0x01, 0x38, 0x1c, 0x61,
	0x02, 0x64, 0xc8, 0x00,
	0x01, 0x38, 0x1c, 0x61,
	0xbf, 0x35, 0x6a, 0x08,
	0xff, 0x64, 0xf8, 0x09,
	0xff, 0x35, 0x26, 0x09,
	0x80, 0x02, 0xa4, 0x69,
	0x10, 0x0c, 0x7a, 0x69,
	0x80, 0x94, 0x22, 0x79,
	0x00, 0x35, 0x0a, 0x5b,
	0x80, 0x02, 0xa4, 0x69,
	0xff, 0x65, 0x94, 0x79,
	0x01, 0x38, 0x70, 0x71,
	0xff, 0x38, 0x70, 0x18,
	0xff, 0x38, 0x94, 0x79,
	0x80, 0xea, 0x4a, 0x61,
	0xef, 0x38, 0xc8, 0x18,
	0x80, 0x6a, 0xc8, 0x00,
	0x00, 0x65, 0x3c, 0x49,
	0x33, 0x38, 0xc8, 0x28,
	0xff, 0x64, 0xd0, 0x09,
	0x04, 0x39, 0xc0, 0x31,
	0x09, 0x6a, 0xd6, 0x01,
	0x80, 0xeb, 0x42, 0x79,
	0xf7, 0xeb, 0xd6, 0x09,
	0x08, 0xeb, 0x46, 0x69,
	0x01, 0x6a, 0xd6, 0x01,
	0x08, 0xe9, 0x10, 0x31,
	0x03, 0x8c, 0x10, 0x30,
	0xff, 0x38, 0x70, 0x18,
	0x88, 0x6a, 0xcc, 0x00,
	0x39, 0x6a, 0xce, 0x5b,
	0x08, 0x6a, 0x18, 0x01,
	0xff, 0x6a, 0x1a, 0x09,
	0xff, 0x6a, 0x1c, 0x09,
	0x0d, 0x93, 0x26, 0x01,
	0x00, 0x65, 0x78, 0x5c,
	0x88, 0x6a, 0xcc, 0x00,
	0x00, 0x65, 0x6a, 0x5c,
	0x00, 0x65, 0xc2, 0x5b,
	0xff, 0x6a, 0xc8, 0x08,
	0x08, 0x39, 0x72, 0x18,
	0x00, 0x3a, 0x74, 0x20,
	0x00, 0x65, 0x02, 0x41,
	0x01, 0x0c, 0x6c, 0x79,
	0x10, 0x0c, 0x02, 0x79,
	0x10, 0x0c, 0x7a, 0x69,
	0x01, 0xfc, 0x70, 0x79,
	0xff, 0x6a, 0x70, 0x08,
	0x01, 0x0c, 0x76, 0x79,
	0x10, 0x0c, 0x02, 0x79,
	0x00, 0x65, 0xae, 0x59,
	0x01, 0xfc, 0x94, 0x69,
	0x40, 0x0d, 0x84, 0x69,
	0xb1, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0x94, 0x41,
	0x2e, 0xfc, 0xa2, 0x28,
	0x3f, 0x38, 0xc8, 0x08,
	0x00, 0x51, 0x94, 0x71,
	0xff, 0x6a, 0xc8, 0x08,
	0xf8, 0x39, 0x72, 0x18,
	0xff, 0x3a, 0x74, 0x20,
	0x01, 0x38, 0x70, 0x18,
	0x00, 0x65, 0x86, 0x41,
	0x03, 0x08, 0x52, 0x31,
	0xff, 0x38, 0x50, 0x09,
	0x12, 0x01, 0x02, 0x00,
	0xff, 0x08, 0x52, 0x09,
	0xff, 0x09, 0x54, 0x09,
	0xff, 0x0a, 0x56, 0x09,
	0xff, 0x38, 0x50, 0x09,
	0x00, 0x65, 0xaa, 0x40,
	0x10, 0x0c, 0xa4, 0x79,
	0x00, 0x65, 0xae, 0x59,
	0x7f, 0x02, 0x04, 0x08,
	0xe1, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0xaa, 0x40,
	0x04, 0x93, 0xc2, 0x69,
	0xdf, 0x93, 0x26, 0x09,
	0x20, 0x93, 0xb2, 0x69,
	0x02, 0x93, 0x26, 0x01,
	0x01, 0x94, 0xb6, 0x79,
	0x01, 0x94, 0xb6, 0x79,
	0x01, 0x94, 0xb6, 0x79,
	0x01, 0x94, 0xb6, 0x79,
	0x01, 0x94, 0xb6, 0x79,
	0x10, 0x94, 0xc0, 0x69,
	0xd7, 0x93, 0x26, 0x09,
	0x28, 0x93, 0xc4, 0x69,
	0xff, 0x6a, 0xd4, 0x0c,
	0x00, 0x65, 0x2a, 0x5b,
	0x05, 0xb4, 0x10, 0x31,
	0x02, 0x6a, 0x1a, 0x31,
	0x03, 0x8c, 0x10, 0x30,
	0x88, 0x6a, 0xcc, 0x00,
	0xb4, 0x6a, 0xcc, 0x5b,
	0xff, 0x6a, 0x1a, 0x09,
	0xff, 0x6a, 0x1c, 0x09,
	0x00, 0x65, 0xc2, 0x5b,
	0x3d, 0x6a, 0x0a, 0x5b,
	0xac, 0x6a, 0x26, 0x01,
	0x04, 0x0b, 0xde, 0x69,
	0x04, 0x0b, 0xe4, 0x69,
	0x10, 0x0c, 0xe0, 0x79,
	0x02, 0x03, 0xe8, 0x79,
	0x11, 0x0c, 0xe4, 0x79,
	0xd7, 0x93, 0x26, 0x09,
	0x28, 0x93, 0xea, 0x69,
	0x12, 0x01, 0x02, 0x00,
	0x00, 0x65, 0xaa, 0x40,
	0x00, 0x65, 0x2a, 0x5b,
	0xff, 0x06, 0x44, 0x09,
	0x00, 0x65, 0xaa, 0x40,
	0x10, 0x3d, 0x06, 0x00,
	0xff, 0x34, 0xca, 0x08,
	0x80, 0x65, 0x1c, 0x62,
	0x0f, 0xa1, 0xca, 0x08,
	0x07, 0xa1, 0xca, 0x08,
	0x40, 0xa0, 0xc8, 0x08,
	0x00, 0x65, 0xca, 0x00,
	0x80, 0x65, 0xca, 0x00,
	0x80, 0xa0, 0x0c, 0x7a,
	0xff, 0x65, 0x0c, 0x08,
	0x00, 0x65, 0x1e, 0x42,
	0x20, 0xa0, 0x24, 0x7a,
	0xff, 0x65, 0x0c, 0x08,
	0x00, 0x65, 0xba, 0x5b,
	0xa0, 0x3d, 0x2c, 0x62,
	0x23, 0xa0, 0x0c, 0x08,
	0x00, 0x65, 0xba, 0x5b,
	0xa0, 0x3d, 0x2c, 0x62,
	0x00, 0xb9, 0x24, 0x42,
	0xff, 0x65, 0x24, 0x62,
	0xa1, 0x6a, 0x22, 0x01,
	0xff, 0x6a, 0xd4, 0x08,
	0x10, 0x51, 0x2c, 0x72,
	0x40, 0x6a, 0x18, 0x00,
	0xff, 0x65, 0x0c, 0x08,
	0x00, 0x65, 0xba, 0x5b,
	0xa0, 0x3d, 0xf6, 0x71,
	0x40, 0x6a, 0x18, 0x00,
	0xff, 0x34, 0xa6, 0x08,
	0x80, 0x34, 0x34, 0x62,
	0x7f, 0xa0, 0x40, 0x09,
	0x08, 0x6a, 0x68, 0x00,
	0x00, 0x65, 0xaa, 0x40,
	0x64, 0x6a, 0x00, 0x5b,
	0x80, 0x64, 0xaa, 0x6a,
	0x04, 0x64, 0x8c, 0x72,
	0x02, 0x64, 0x92, 0x72,
	0x00, 0x6a, 0x54, 0x72,
	0x03, 0x64, 0xa6, 0x72,
	0x01, 0x64, 0x88, 0x72,
	0x07, 0x64, 0xe8, 0x72,
	0x08, 0x64, 0x50, 0x72,
	0x23, 0x64, 0xec, 0x72,
	0x11, 0x6a, 0x22, 0x01,
	0x07, 0x6a, 0xf2, 0x5a,
	0xff, 0x06, 0xd4, 0x08,
	0x00, 0x65, 0xaa, 0x40,
	0xff, 0xa8, 0x58, 0x6a,
	0xff, 0xa2, 0x70, 0x7a,
	0x01, 0x6a, 0x6a, 0x00,
	0x00, 0xb9, 0xe6, 0x5b,
	0xff, 0xa2, 0x70, 0x7a,
	0x71, 0x6a, 0x22, 0x01,
	0xff, 0x6a, 0xd4, 0x08,
	0x40, 0x51, 0x70, 0x62,
	0x0d, 0x6a, 0x6a, 0x00,
	0x00, 0xb9, 0xe6, 0x5b,
	0xff, 0x3e, 0x74, 0x09,
	0xff, 0x90, 0x7c, 0x08,
	0x00, 0x65, 0x4e, 0x58,
	0x00, 0x65, 0xbc, 0x40,
	0x20, 0xa0, 0x78, 0x6a,
	0xff, 0x37, 0xc8, 0x08,
	0x00, 0x6a, 0x90, 0x5b,
	0xff, 0x6a, 0xa6, 0x5b,
	0xff, 0xf8, 0xc8, 0x08,
	0xff, 0x4f, 0xc8, 0x08,
	0x01, 0x6a, 0x90, 0x5b,
	0x00, 0xb9, 0xa6, 0x5b,
	0x01, 0x4f, 0x9e, 0x18,
	0x02, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0x80, 0x5c,
	0x00, 0x65, 0xbc, 0x40,
	0x41, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0xaa, 0x40,
	0x04, 0xa0, 0x40, 0x01,
	0x00, 0x65, 0x98, 0x5c,
	0x00, 0x65, 0xbc, 0x40,
	0x10, 0x36, 0x50, 0x7a,
	0x05, 0x38, 0x46, 0x31,
	0x04, 0x14, 0x58, 0x31,
	0x03, 0xa9, 0x60, 0x31,
	0xa3, 0x6a, 0xcc, 0x00,
	0x38, 0x6a, 0xcc, 0x5b,
	0xac, 0x6a, 0xcc, 0x00,
	0x14, 0x6a, 0xce, 0x5b,
	0xa9, 0x6a, 0xd0, 0x5b,
	0x00, 0x65, 0x50, 0x42,
	0xef, 0x36, 0x6c, 0x08,
	0x00, 0x65, 0x50, 0x42,
	0x0f, 0x64, 0xc8, 0x08,
	0x07, 0x64, 0xc8, 0x08,
	0x00, 0x37, 0x6e, 0x00,
	0xff, 0x6a, 0xa4, 0x00,
	0x00, 0x65, 0x60, 0x5b,
	0xff, 0x51, 0xbc, 0x72,
	0x20, 0x36, 0xc6, 0x7a,
	0x00, 0x90, 0x4e, 0x5b,
	0x00, 0x65, 0xc8, 0x42,
	0xff, 0x06, 0xd4, 0x08,
	0x00, 0x65, 0xba, 0x5b,
	0xe0, 0x3d, 0xe2, 0x62,
	0x20, 0x12, 0xe2, 0x62,
	0x51, 0x6a, 0xf6, 0x5a,
	0x00, 0x65, 0x48, 0x5b,
	0xff, 0x37, 0xc8, 0x08,
	0x00, 0xa1, 0xda, 0x62,
	0x04, 0xa0, 0xda, 0x7a,
	0xfb, 0xa0, 0x40, 0x09,
	0x80, 0x36, 0x6c, 0x00,
	0x80, 0xa0, 0x50, 0x7a,
	0x7f, 0xa0, 0x40, 0x09,
	0xff, 0x6a, 0xf2, 0x5a,
	0x00, 0x65, 0x50, 0x42,
	0x04, 0xa0, 0xe0, 0x7a,
	0x00, 0x65, 0x98, 0x5c,
	0x00, 0x65, 0xe2, 0x42,
	0x00, 0x65, 0x80, 0x5c,
	0x31, 0x6a, 0x22, 0x01,
	0x0c, 0x6a, 0xf2, 0x5a,
	0x00, 0x65, 0x50, 0x42,
	0x61, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0x50, 0x42,
	0x51, 0x6a, 0xf6, 0x5a,
	0x51, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0x50, 0x42,
	0x10, 0x3d, 0x06, 0x00,
	0xff, 0x65, 0x68, 0x0c,
	0xff, 0x06, 0xd4, 0x08,
	0x01, 0x0c, 0xf8, 0x7a,
	0x04, 0x0c, 0xfa, 0x6a,
	0xe0, 0x03, 0x7a, 0x08,
	0xe0, 0x3d, 0x06, 0x63,
	0xff, 0x65, 0xcc, 0x08,
	0xff, 0x12, 0xda, 0x0c,
	0xff, 0x06, 0xd4, 0x0c,
	0xd1, 0x6a, 0x22, 0x01,
	0x00, 0x65, 0xaa, 0x40,
	0xff, 0x65, 0x26, 0x09,
	0x01, 0x0b, 0x1a, 0x6b,
	0x10, 0x0c, 0x0c, 0x7b,
	0x04, 0x0b, 0x14, 0x6b,
	0xff, 0x6a, 0xca, 0x08,
	0x04, 0x93, 0x18, 0x6b,
	0x01, 0x94, 0x16, 0x7b,
	0x10, 0x94, 0x18, 0x6b,
	0x80, 0x3d, 0x1e, 0x73,
	0x0f, 0x04, 0x22, 0x6b,
	0x02, 0x03, 0x22, 0x7b,
	0x11, 0x0c, 0x1e, 0x7b,
	0xc7, 0x93, 0x26, 0x09,
	0xff, 0x99, 0xd4, 0x08,
	0x38, 0x93, 0x24, 0x6b,
	0xff, 0x6a, 0xd4, 0x0c,
	0x80, 0x36, 0x28, 0x6b,
	0x21, 0x6a, 0x22, 0x05,
	0xff, 0x65, 0x20, 0x09,
	0xff, 0x51, 0x36, 0x63,
	0xff, 0x37, 0xc8, 0x08,
	0xa1, 0x6a, 0x42, 0x43,
	0xff, 0x51, 0xc8, 0x08,
	0xb9, 0x6a, 0x42, 0x43,
	0xff, 0x90, 0xa4, 0x08,
	0xff, 0xba, 0x46, 0x73,
	0xff, 0xba, 0x20, 0x09,
	0xff, 0x65, 0xca, 0x18,
	0x00, 0x6c, 0x3a, 0x63,
	0xff, 0x90, 0xca, 0x0c,
	0xff, 0x6a, 0xca, 0x04,
	0x20, 0x36, 0x5a, 0x7b,
	0x00, 0x90, 0x2e, 0x5b,
	0xff, 0x65, 0x5a, 0x73,
	0xff, 0x52, 0x58, 0x73,
	0xff, 0xba, 0xcc, 0x08,
	0xff, 0x52, 0x20, 0x09,
	0xff, 0x66, 0x74, 0x09,
	0xff, 0x65, 0x20, 0x0d,
	0xff, 0xba, 0x7e, 0x0c,
	0x00, 0x6a, 0x86, 0x5c,
	0x0d, 0x6a, 0x6a, 0x00,
	0x00, 0x51, 0xe6, 0x43,
	0xff, 0x3f, 0xb4, 0x73,
	0xff, 0x6a, 0xa2, 0x00,
	0x00, 0x3f, 0x2e, 0x5b,
	0xff, 0x65, 0xb4, 0x73,
	0x20, 0x36, 0x6c, 0x00,
	0x20, 0xa0, 0x6e, 0x6b,
	0xff, 0xb9, 0xa2, 0x0c,
	0xff, 0x6a, 0xa2, 0x04,
	0xff, 0x65, 0xa4, 0x08,
	0xe0, 0x6a, 0xcc, 0x00,
	0x45, 0x6a, 0xda, 0x5b,
	0x01, 0x6a, 0xd0, 0x01,
	0x09, 0x6a, 0xd6, 0x01,
	0x80, 0xeb, 0x7a, 0x7b,
	0x01, 0x6a, 0xd6, 0x01,
	0x01, 0xe9, 0xa4, 0x34,
	0x88, 0x6a, 0xcc, 0x00,
	0x45, 0x6a, 0xda, 0x5b,
	0x01, 0x6a, 0x18, 0x01,
	0xff, 0x6a, 0x1a, 0x09,
	0xff, 0x6a, 0x1c, 0x09,
	0x0d, 0x6a, 0x26, 0x01,
	0x00, 0x65, 0x78, 0x5c,
	0xff, 0x99, 0xa4, 0x0c,
	0xff, 0x65, 0xa4, 0x08,
	0xe0, 0x6a, 0xcc, 0x00,
	0x45, 0x6a, 0xda, 0x5b,
	0x01, 0x6a, 0xd0, 0x01,
	0x01, 0x6a, 0xdc, 0x05,
	0x88, 0x6a, 0xcc, 0x00,
	0x45, 0x6a, 0xda, 0x5b,
	0x01, 0x6a, 0x18, 0x01,
	0xff, 0x6a, 0x1a, 0x09,
	0xff, 0x6a, 0x1c, 0x09,
	0x01, 0x6a, 0x26, 0x05,
	0x01, 0x65, 0xd8, 0x31,
	0x09, 0xee, 0xdc, 0x01,
	0x80, 0xee, 0xaa, 0x7b,
	0xff, 0x6a, 0xdc, 0x0d,
	0xff, 0x65, 0x32, 0x09,
	0x0a, 0x93, 0x26, 0x01,
	0x00, 0x65, 0x78, 0x44,
	0xff, 0x37, 0xc8, 0x08,
	0x00, 0x6a, 0x70, 0x5b,
	0xff, 0x52, 0xa2, 0x0c,
	0x01, 0x0c, 0xba, 0x7b,
	0x04, 0x0c, 0xba, 0x6b,
	0xe0, 0x03, 0x06, 0x08,
	0xe0, 0x03, 0x7a, 0x0c,
	0xff, 0x8c, 0x10, 0x08,
	0xff, 0x8d, 0x12, 0x08,
	0xff, 0x8e, 0x14, 0x0c,
	0xff, 0x6c, 0xda, 0x08,
	0xff, 0x6c, 0xda, 0x08,
	0xff, 0x6c, 0xda, 0x08,
	0xff, 0x6c, 0xda, 0x08,
	0xff, 0x6c, 0xda, 0x08,
	0xff, 0x6c, 0xda, 0x08,
	0xff, 0x6c, 0xda, 0x0c,
	0x3d, 0x64, 0xa4, 0x28,
	0x55, 0x64, 0xc8, 0x28,
	0x00, 0x6c, 0xda, 0x18,
	0xff, 0x52, 0xc8, 0x08,
	0x00, 0x6c, 0xda, 0x20,
	0xff, 0x6a, 0xc8, 0x08,
	0x00, 0x6c, 0xda, 0x20,
	0x00, 0x6c, 0xda, 0x24,
	0xff, 0x65, 0xc8, 0x08,
	0xe0, 0x6a, 0xcc, 0x00,
	0x41, 0x6a, 0xd6, 0x5b,
	0xff, 0x90, 0xe2, 0x09,
	0x20, 0x6a, 0xd0, 0x01,
	0x04, 0x35, 0xf8, 0x7b,
	0x1d, 0x6a, 0xdc, 0x01,
	0xdc, 0xee, 0xf4, 0x63,
	0x00, 0x65, 0x0e, 0x44,
	0x01, 0x6a, 0xdc, 0x01,
	0x20, 0xa0, 0xd8, 0x31,
	0x09, 0xee, 0xdc, 0x01,
	0x80, 0xee, 0xfe, 0x7b,
	0x11, 0x6a, 0xdc, 0x01,
	0x50, 0xee, 0x02, 0x64,
	0x20, 0x6a, 0xd0, 0x01,
	0x09, 0x6a, 0xdc, 0x01,
	0x88, 0xee, 0x08, 0x64,
	0x19, 0x6a, 0xdc, 0x01,
	0xd8, 0xee, 0x0c, 0x64,
	0xff, 0x6a, 0xdc, 0x09,
	0x18, 0xee, 0x10, 0x6c,
	0xff, 0x6a, 0xd4, 0x0c,
	0x88, 0x6a, 0xcc, 0x00,
	0x41, 0x6a, 0xd6, 0x5b,
	0x20, 0x6a, 0x18, 0x01,
	0xff, 0x6a, 0x1a, 0x09,
	0xff, 0x6a, 0x1c, 0x09,
	0xff, 0x35, 0x26, 0x09,
	0x04, 0x35, 0x3c, 0x6c,
	0xa0, 0x6a, 0xca, 0x00,
	0x20, 0x65, 0xc8, 0x18,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0xff, 0x6c, 0x32, 0x09,
	0x00, 0x65, 0x26, 0x64,
	0x0a, 0x93, 0x26, 0x01,
	0x00, 0x65, 0x78, 0x44,
	0xa0, 0x6a, 0xcc, 0x00,
	0xe8, 0x6a, 0xc8, 0x00,
	0x01, 0x94, 0x40, 0x6c,
	0x10, 0x94, 0x42, 0x6c,
	0x08, 0x94, 0x54, 0x6c,
	0x08, 0x94, 0x54, 0x6c,
	0x08, 0x94, 0x54, 0x6c,
	0x00, 0x65, 0x68, 0x5c,
	0x08, 0x64, 0xc8, 0x18,
	0x00, 0x8c, 0xca, 0x18,
	0x00, 0x65, 0x4a, 0x4c,
	0x00, 0x65, 0x40, 0x44,
	0xf7, 0x93, 0x26, 0x09,
	0x08, 0x93, 0x56, 0x6c,
	0x00, 0x65, 0x68, 0x5c,
	0x08, 0x64, 0xc8, 0x18,
	0x08, 0x64, 0x58, 0x64,
	0xff, 0x6a, 0xd4, 0x0c,
	0x00, 0x65, 0x78, 0x5c,
	0x00, 0x65, 0x68, 0x5c,
	0x00, 0x65, 0x68, 0x5c,
	0x00, 0x65, 0x68, 0x5c,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x08,
	0xff, 0x99, 0xda, 0x0c,
	0x08, 0x94, 0x78, 0x7c,
	0xf7, 0x93, 0x26, 0x09,
	0x08, 0x93, 0x7c, 0x6c,
	0xff, 0x6a, 0xd4, 0x0c,
	0xff, 0x40, 0x74, 0x09,
	0xff, 0x90, 0x80, 0x08,
	0xff, 0x6a, 0x72, 0x05,
	0xff, 0x40, 0x94, 0x64,
	0xff, 0x3f, 0x8c, 0x64,
	0xff, 0x6a, 0xca, 0x04,
	0xff, 0x3f, 0x20, 0x09,
	0x01, 0x6a, 0x6a, 0x00,
	0x00, 0xb9, 0xe6, 0x5b,
	0xff, 0xba, 0x7e, 0x0c,
	0xff, 0x40, 0x20, 0x09,
	0xff, 0xba, 0x80, 0x0c,
	0xff, 0x3f, 0x74, 0x09,
	0xff, 0x90, 0x7e, 0x0c,
};

static int aic7xxx_patch15_func(struct aic7xxx_host *p);

static int
aic7xxx_patch15_func(struct aic7xxx_host *p)
{
	return ((p->bugs & AHC_BUG_SCBCHAN_UPLOAD) != 0);
}

static int aic7xxx_patch14_func(struct aic7xxx_host *p);

static int
aic7xxx_patch14_func(struct aic7xxx_host *p)
{
	return ((p->bugs & AHC_BUG_PCI_2_1_RETRY) != 0);
}

static int aic7xxx_patch13_func(struct aic7xxx_host *p);

static int
aic7xxx_patch13_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_WIDE) != 0);
}

static int aic7xxx_patch12_func(struct aic7xxx_host *p);

static int
aic7xxx_patch12_func(struct aic7xxx_host *p)
{
	return ((p->bugs & AHC_BUG_AUTOFLUSH) != 0);
}

static int aic7xxx_patch11_func(struct aic7xxx_host *p);

static int
aic7xxx_patch11_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_ULTRA2) == 0);
}

static int aic7xxx_patch10_func(struct aic7xxx_host *p);

static int
aic7xxx_patch10_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_CMD_CHAN) == 0);
}

static int aic7xxx_patch9_func(struct aic7xxx_host *p);

static int
aic7xxx_patch9_func(struct aic7xxx_host *p)
{
	return ((p->chip & AHC_CHIPID_MASK) == AHC_AIC7895);
}

static int aic7xxx_patch8_func(struct aic7xxx_host *p);

static int
aic7xxx_patch8_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_ULTRA) != 0);
}

static int aic7xxx_patch7_func(struct aic7xxx_host *p);

static int
aic7xxx_patch7_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_ULTRA2) != 0);
}

static int aic7xxx_patch6_func(struct aic7xxx_host *p);

static int
aic7xxx_patch6_func(struct aic7xxx_host *p)
{
	return ((p->flags & AHC_PAGESCBS) == 0);
}

static int aic7xxx_patch5_func(struct aic7xxx_host *p);

static int
aic7xxx_patch5_func(struct aic7xxx_host *p)
{
	return ((p->flags & AHC_PAGESCBS) != 0);
}

static int aic7xxx_patch4_func(struct aic7xxx_host *p);

static int
aic7xxx_patch4_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_QUEUE_REGS) != 0);
}

static int aic7xxx_patch3_func(struct aic7xxx_host *p);

static int
aic7xxx_patch3_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_TWIN) != 0);
}

static int aic7xxx_patch2_func(struct aic7xxx_host *p);

static int
aic7xxx_patch2_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_QUEUE_REGS) == 0);
}

static int aic7xxx_patch1_func(struct aic7xxx_host *p);

static int
aic7xxx_patch1_func(struct aic7xxx_host *p)
{
	return ((p->features & AHC_CMD_CHAN) != 0);
}

static int aic7xxx_patch0_func(struct aic7xxx_host *p);

static int
aic7xxx_patch0_func(struct aic7xxx_host *p)
{
	return (0);
}

struct sequencer_patch {
	int		(*patch_func)(struct aic7xxx_host *);
	unsigned int	begin	   :10,
			skip_instr :10,
			skip_patch :12;
} sequencer_patches[] = {
	{ aic7xxx_patch1_func, 3, 2, 1 },
	{ aic7xxx_patch2_func, 7, 1, 1 },
	{ aic7xxx_patch2_func, 8, 1, 1 },
	{ aic7xxx_patch3_func, 11, 4, 1 },
	{ aic7xxx_patch4_func, 16, 3, 2 },
	{ aic7xxx_patch0_func, 19, 4, 1 },
	{ aic7xxx_patch5_func, 23, 1, 1 },
	{ aic7xxx_patch6_func, 26, 1, 1 },
	{ aic7xxx_patch1_func, 29, 1, 2 },
	{ aic7xxx_patch0_func, 30, 3, 1 },
	{ aic7xxx_patch3_func, 39, 4, 1 },
	{ aic7xxx_patch7_func, 43, 3, 2 },
	{ aic7xxx_patch0_func, 46, 3, 1 },
	{ aic7xxx_patch8_func, 52, 7, 1 },
	{ aic7xxx_patch3_func, 60, 3, 1 },
	{ aic7xxx_patch7_func, 63, 2, 1 },
	{ aic7xxx_patch7_func, 102, 1, 2 },
	{ aic7xxx_patch0_func, 103, 2, 1 },
	{ aic7xxx_patch7_func, 107, 2, 1 },
	{ aic7xxx_patch9_func, 109, 1, 1 },
	{ aic7xxx_patch10_func, 110, 2, 1 },
	{ aic7xxx_patch7_func, 113, 1, 2 },
	{ aic7xxx_patch0_func, 114, 1, 1 },
	{ aic7xxx_patch1_func, 118, 1, 1 },
	{ aic7xxx_patch1_func, 121, 3, 3 },
	{ aic7xxx_patch11_func, 123, 1, 1 },
	{ aic7xxx_patch0_func, 124, 5, 1 },
	{ aic7xxx_patch7_func, 132, 1, 1 },
	{ aic7xxx_patch9_func, 133, 1, 1 },
	{ aic7xxx_patch10_func, 134, 3, 1 },
	{ aic7xxx_patch7_func, 137, 3, 2 },
	{ aic7xxx_patch0_func, 140, 2, 1 },
	{ aic7xxx_patch7_func, 142, 5, 2 },
	{ aic7xxx_patch0_func, 147, 3, 1 },
	{ aic7xxx_patch7_func, 150, 1, 2 },
	{ aic7xxx_patch0_func, 151, 2, 1 },
	{ aic7xxx_patch1_func, 153, 15, 4 },
	{ aic7xxx_patch11_func, 166, 1, 2 },
	{ aic7xxx_patch0_func, 167, 1, 1 },
	{ aic7xxx_patch0_func, 168, 10, 1 },
	{ aic7xxx_patch7_func, 181, 1, 2 },
	{ aic7xxx_patch0_func, 182, 2, 1 },
	{ aic7xxx_patch7_func, 184, 18, 1 },
	{ aic7xxx_patch1_func, 202, 3, 3 },
	{ aic7xxx_patch7_func, 204, 1, 1 },
	{ aic7xxx_patch0_func, 205, 4, 1 },
	{ aic7xxx_patch7_func, 210, 2, 1 },
	{ aic7xxx_patch7_func, 215, 13, 3 },
	{ aic7xxx_patch12_func, 218, 1, 1 },
	{ aic7xxx_patch12_func, 219, 4, 1 },
	{ aic7xxx_patch1_func, 229, 3, 3 },
	{ aic7xxx_patch11_func, 231, 1, 1 },
	{ aic7xxx_patch0_func, 232, 5, 1 },
	{ aic7xxx_patch11_func, 237, 1, 2 },
	{ aic7xxx_patch0_func, 238, 9, 1 },
	{ aic7xxx_patch13_func, 254, 1, 2 },
	{ aic7xxx_patch0_func, 255, 1, 1 },
	{ aic7xxx_patch4_func, 316, 1, 2 },
	{ aic7xxx_patch0_func, 317, 1, 1 },
	{ aic7xxx_patch2_func, 320, 1, 1 },
	{ aic7xxx_patch1_func, 330, 3, 2 },
	{ aic7xxx_patch0_func, 333, 5, 1 },
	{ aic7xxx_patch13_func, 341, 1, 2 },
	{ aic7xxx_patch0_func, 342, 1, 1 },
	{ aic7xxx_patch5_func, 347, 1, 1 },
	{ aic7xxx_patch11_func, 389, 15, 2 },
	{ aic7xxx_patch14_func, 402, 1, 1 },
	{ aic7xxx_patch1_func, 441, 7, 2 },
	{ aic7xxx_patch0_func, 448, 8, 1 },
	{ aic7xxx_patch1_func, 457, 4, 2 },
	{ aic7xxx_patch0_func, 461, 6, 1 },
	{ aic7xxx_patch1_func, 467, 4, 2 },
	{ aic7xxx_patch0_func, 471, 3, 1 },
	{ aic7xxx_patch10_func, 481, 10, 1 },
	{ aic7xxx_patch1_func, 500, 22, 5 },
	{ aic7xxx_patch11_func, 508, 4, 1 },
	{ aic7xxx_patch7_func, 512, 7, 3 },
	{ aic7xxx_patch15_func, 512, 5, 2 },
	{ aic7xxx_patch0_func, 517, 2, 1 },
	{ aic7xxx_patch10_func, 522, 50, 3 },
	{ aic7xxx_patch14_func, 543, 17, 2 },
	{ aic7xxx_patch0_func, 560, 4, 1 },
	{ aic7xxx_patch10_func, 572, 4, 1 },
	{ aic7xxx_patch5_func, 576, 2, 1 },
	{ aic7xxx_patch5_func, 579, 9, 1 },

};
