Aegisub/devel/vsfilter/dsutil/a_yuvtable.asm

613 lines
18 KiB
NASM

; VirtualDub - Video processing and capture application
; Copyright (C) 1998-2001 Avery Lee
;
; This program is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2 of the License, or
; (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, write to the Free Software
; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
.486
.model flat
.const
public _YUV_Y_table
public _YUV_U_table
public _YUV_V_table
public _YUV_clip_table
public _YUV_clip_table16
_YUV_Y_table dd 1FED1FEDh, 1FEF1FEFh, 1FF01FF0h, 1FF11FF1h
dd 1FF21FF2h, 1FF31FF3h, 1FF41FF4h, 1FF61FF6h
dd 1FF71FF7h, 1FF81FF8h, 1FF91FF9h, 1FFA1FFAh
dd 1FFB1FFBh, 1FFD1FFDh, 1FFE1FFEh, 1FFF1FFFh
dd 20002000h, 20012001h, 20022002h, 20032003h
dd 20052005h, 20062006h, 20072007h, 20082008h
dd 20092009h, 200A200Ah, 200C200Ch, 200D200Dh
dd 200E200Eh, 200F200Fh, 20102010h, 20112011h
dd 20132013h, 20142014h, 20152015h, 20162016h
dd 20172017h, 20182018h, 201A201Ah, 201B201Bh
dd 201C201Ch, 201D201Dh, 201E201Eh, 201F201Fh
dd 20212021h, 20222022h, 20232023h, 20242024h
dd 20252025h, 20262026h, 20282028h, 20292029h
dd 202A202Ah, 202B202Bh, 202C202Ch, 202D202Dh
dd 202F202Fh, 20302030h, 20312031h, 20322032h
dd 20332033h, 20342034h, 20362036h, 20372037h
dd 20382038h, 20392039h, 203A203Ah, 203B203Bh
dd 203D203Dh, 203E203Eh, 203F203Fh, 20402040h
dd 20412041h, 20422042h, 20442044h, 20452045h
dd 20462046h, 20472047h, 20482048h, 20492049h
dd 204A204Ah, 204C204Ch, 204D204Dh, 204E204Eh
dd 204F204Fh, 20502050h, 20512051h, 20532053h
dd 20542054h, 20552055h, 20562056h, 20572057h
dd 20582058h, 205A205Ah, 205B205Bh, 205C205Ch
dd 205D205Dh, 205E205Eh, 205F205Fh, 20612061h
dd 20622062h, 20632063h, 20642064h, 20652065h
dd 20662066h, 20682068h, 20692069h, 206A206Ah
dd 206B206Bh, 206C206Ch, 206D206Dh, 206F206Fh
dd 20702070h, 20712071h, 20722072h, 20732073h
dd 20742074h, 20762076h, 20772077h, 20782078h
dd 20792079h, 207A207Ah, 207B207Bh, 207D207Dh
dd 207E207Eh, 207F207Fh, 20802080h, 20812081h
dd 20822082h, 20842084h, 20852085h, 20862086h
dd 20872087h, 20882088h, 20892089h, 208B208Bh
dd 208C208Ch, 208D208Dh, 208E208Eh, 208F208Fh
dd 20902090h, 20922092h, 20932093h, 20942094h
dd 20952095h, 20962096h, 20972097h, 20982098h
dd 209A209Ah, 209B209Bh, 209C209Ch, 209D209Dh
dd 209E209Eh, 209F209Fh, 20A120A1h, 20A220A2h
dd 20A320A3h, 20A420A4h, 20A520A5h, 20A620A6h
dd 20A820A8h, 20A920A9h, 20AA20AAh, 20AB20ABh
dd 20AC20ACh, 20AD20ADh, 20AF20AFh, 20B020B0h
dd 20B120B1h, 20B220B2h, 20B320B3h, 20B420B4h
dd 20B620B6h, 20B720B7h, 20B820B8h, 20B920B9h
dd 20BA20BAh, 20BB20BBh, 20BD20BDh, 20BE20BEh
dd 20BF20BFh, 20C020C0h, 20C120C1h, 20C220C2h
dd 20C420C4h, 20C520C5h, 20C620C6h, 20C720C7h
dd 20C820C8h, 20C920C9h, 20CB20CBh, 20CC20CCh
dd 20CD20CDh, 20CE20CEh, 20CF20CFh, 20D020D0h
dd 20D220D2h, 20D320D3h, 20D420D4h, 20D520D5h
dd 20D620D6h, 20D720D7h, 20D920D9h, 20DA20DAh
dd 20DB20DBh, 20DC20DCh, 20DD20DDh, 20DE20DEh
dd 20DF20DFh, 20E120E1h, 20E220E2h, 20E320E3h
dd 20E420E4h, 20E520E5h, 20E620E6h, 20E820E8h
dd 20E920E9h, 20EA20EAh, 20EB20EBh, 20EC20ECh
dd 20ED20EDh, 20EF20EFh, 20F020F0h, 20F120F1h
dd 20F220F2h, 20F320F3h, 20F420F4h, 20F620F6h
dd 20F720F7h, 20F820F8h, 20F920F9h, 20FA20FAh
dd 20FB20FBh, 20FD20FDh, 20FE20FEh, 20FF20FFh
dd 21002100h, 21012101h, 21022102h, 21042104h
dd 21052105h, 21062106h, 21072107h, 21082108h
dd 21092109h, 210B210Bh, 210C210Ch, 210D210Dh
dd 210E210Eh, 210F210Fh, 21102110h, 21122112h
dd 21132113h, 21142114h, 21152115h, 21162116h
_YUV_U_table dd 1EFE1032h, 1F001032h, 1F021031h, 1F041031h
dd 1F061030h, 1F081030h, 1F0A1030h, 1F0C102Fh
dd 1F0E102Fh, 1F10102Fh, 1F12102Eh, 1F14102Eh
dd 1F16102Dh, 1F18102Dh, 1F1A102Dh, 1F1C102Ch
dd 1F1E102Ch, 1F20102Bh, 1F22102Bh, 1F24102Bh
dd 1F26102Ah, 1F28102Ah, 1F2A1029h, 1F2C1029h
dd 1F2E1029h, 1F301028h, 1F321028h, 1F341027h
dd 1F361027h, 1F381027h, 1F3A1026h, 1F3C1026h
dd 1F3E1026h, 1F401025h, 1F421025h, 1F441024h
dd 1F461024h, 1F481024h, 1F4A1023h, 1F4C1023h
dd 1F4E1022h, 1F501022h, 1F521022h, 1F541021h
dd 1F561021h, 1F591020h, 1F5B1020h, 1F5D1020h
dd 1F5F101Fh, 1F61101Fh, 1F63101Eh, 1F65101Eh
dd 1F67101Eh, 1F69101Dh, 1F6B101Dh, 1F6D101Dh
dd 1F6F101Ch, 1F71101Ch, 1F73101Bh, 1F75101Bh
dd 1F77101Bh, 1F79101Ah, 1F7B101Ah, 1F7D1019h
dd 1F7F1019h, 1F811019h, 1F831018h, 1F851018h
dd 1F871017h, 1F891017h, 1F8B1017h, 1F8D1016h
dd 1F8F1016h, 1F911016h, 1F931015h, 1F951015h
dd 1F971014h, 1F991014h, 1F9B1014h, 1F9D1013h
dd 1F9F1013h, 1FA11012h, 1FA31012h, 1FA51012h
dd 1FA71011h, 1FA91011h, 1FAB1010h, 1FAD1010h
dd 1FAF1010h, 1FB1100Fh, 1FB3100Fh, 1FB5100Eh
dd 1FB7100Eh, 1FB9100Eh, 1FBB100Dh, 1FBD100Dh
dd 1FBF100Dh, 1FC1100Ch, 1FC3100Ch, 1FC5100Bh
dd 1FC7100Bh, 1FCA100Bh, 1FCC100Ah, 1FCE100Ah
dd 1FD01009h, 1FD21009h, 1FD41009h, 1FD61008h
dd 1FD81008h, 1FDA1007h, 1FDC1007h, 1FDE1007h
dd 1FE01006h, 1FE21006h, 1FE41005h, 1FE61005h
dd 1FE81005h, 1FEA1004h, 1FEC1004h, 1FEE1004h
dd 1FF01003h, 1FF21003h, 1FF41002h, 1FF61002h
dd 1FF81002h, 1FFA1001h, 1FFC1001h, 1FFE1000h
dd 20001000h, 20021000h, 20040FFFh, 20060FFFh
dd 20080FFEh, 200A0FFEh, 200C0FFEh, 200E0FFDh
dd 20100FFDh, 20120FFCh, 20140FFCh, 20160FFCh
dd 20180FFBh, 201A0FFBh, 201C0FFBh, 201E0FFAh
dd 20200FFAh, 20220FF9h, 20240FF9h, 20260FF9h
dd 20280FF8h, 202A0FF8h, 202C0FF7h, 202E0FF7h
dd 20300FF7h, 20320FF6h, 20340FF6h, 20360FF5h
dd 20390FF5h, 203B0FF5h, 203D0FF4h, 203F0FF4h
dd 20410FF3h, 20430FF3h, 20450FF3h, 20470FF2h
dd 20490FF2h, 204B0FF2h, 204D0FF1h, 204F0FF1h
dd 20510FF0h, 20530FF0h, 20550FF0h, 20570FEFh
dd 20590FEFh, 205B0FEEh, 205D0FEEh, 205F0FEEh
dd 20610FEDh, 20630FEDh, 20650FECh, 20670FECh
dd 20690FECh, 206B0FEBh, 206D0FEBh, 206F0FEAh
dd 20710FEAh, 20730FEAh, 20750FE9h, 20770FE9h
dd 20790FE9h, 207B0FE8h, 207D0FE8h, 207F0FE7h
dd 20810FE7h, 20830FE7h, 20850FE6h, 20870FE6h
dd 20890FE5h, 208B0FE5h, 208D0FE5h, 208F0FE4h
dd 20910FE4h, 20930FE3h, 20950FE3h, 20970FE3h
dd 20990FE2h, 209B0FE2h, 209D0FE2h, 209F0FE1h
dd 20A10FE1h, 20A30FE0h, 20A50FE0h, 20A70FE0h
dd 20AA0FDFh, 20AC0FDFh, 20AE0FDEh, 20B00FDEh
dd 20B20FDEh, 20B40FDDh, 20B60FDDh, 20B80FDCh
dd 20BA0FDCh, 20BC0FDCh, 20BE0FDBh, 20C00FDBh
dd 20C20FDAh, 20C40FDAh, 20C60FDAh, 20C80FD9h
dd 20CA0FD9h, 20CC0FD9h, 20CE0FD8h, 20D00FD8h
dd 20D20FD7h, 20D40FD7h, 20D60FD7h, 20D80FD6h
dd 20DA0FD6h, 20DC0FD5h, 20DE0FD5h, 20E00FD5h
dd 20E20FD4h, 20E40FD4h, 20E60FD3h, 20E80FD3h
dd 20EA0FD3h, 20EC0FD2h, 20EE0FD2h, 20F00FD1h
dd 20F20FD1h, 20F40FD1h, 20F60FD0h, 20F80FD0h
dd 20FA0FD0h, 20FC0FCFh, 20FE0FCFh, 21000FCEh
_YUV_V_table dd 1F341068h, 1F351067h, 1F371066h, 1F391066h
dd 1F3A1065h, 1F3C1064h, 1F3D1063h, 1F3F1062h
dd 1F401062h, 1F421061h, 1F441060h, 1F45105Fh
dd 1F47105Eh, 1F48105Dh, 1F4A105Dh, 1F4C105Ch
dd 1F4D105Bh, 1F4F105Ah, 1F501059h, 1F521059h
dd 1F541058h, 1F551057h, 1F571056h, 1F581055h
dd 1F5A1055h, 1F5C1054h, 1F5D1053h, 1F5F1052h
dd 1F601051h, 1F621050h, 1F641050h, 1F65104Fh
dd 1F67104Eh, 1F68104Dh, 1F6A104Ch, 1F6C104Ch
dd 1F6D104Bh, 1F6F104Ah, 1F701049h, 1F721048h
dd 1F741048h, 1F751047h, 1F771046h, 1F781045h
dd 1F7A1044h, 1F7C1043h, 1F7D1043h, 1F7F1042h
dd 1F801041h, 1F821040h, 1F84103Fh, 1F85103Fh
dd 1F87103Eh, 1F88103Dh, 1F8A103Ch, 1F8B103Bh
dd 1F8D103Bh, 1F8F103Ah, 1F901039h, 1F921038h
dd 1F931037h, 1F951036h, 1F971036h, 1F981035h
dd 1F9A1034h, 1F9B1033h, 1F9D1032h, 1F9F1032h
dd 1FA01031h, 1FA21030h, 1FA3102Fh, 1FA5102Eh
dd 1FA7102Eh, 1FA8102Dh, 1FAA102Ch, 1FAB102Bh
dd 1FAD102Ah, 1FAF1029h, 1FB01029h, 1FB21028h
dd 1FB31027h, 1FB51026h, 1FB71025h, 1FB81025h
dd 1FBA1024h, 1FBB1023h, 1FBD1022h, 1FBF1021h
dd 1FC01021h, 1FC21020h, 1FC3101Fh, 1FC5101Eh
dd 1FC7101Dh, 1FC8101Ch, 1FCA101Ch, 1FCB101Bh
dd 1FCD101Ah, 1FCF1019h, 1FD01018h, 1FD21018h
dd 1FD31017h, 1FD51016h, 1FD71015h, 1FD81014h
dd 1FDA1014h, 1FDB1013h, 1FDD1012h, 1FDE1011h
dd 1FE01010h, 1FE2100Fh, 1FE3100Fh, 1FE5100Eh
dd 1FE6100Dh, 1FE8100Ch, 1FEA100Bh, 1FEB100Bh
dd 1FED100Ah, 1FEE1009h, 1FF01008h, 1FF21007h
dd 1FF31007h, 1FF51006h, 1FF61005h, 1FF81004h
dd 1FFA1003h, 1FFB1002h, 1FFD1002h, 1FFE1001h
dd 20001000h, 20020FFFh, 20030FFEh, 20050FFEh
dd 20060FFDh, 20080FFCh, 200A0FFBh, 200B0FFAh
dd 200D0FF9h, 200E0FF9h, 20100FF8h, 20120FF7h
dd 20130FF6h, 20150FF5h, 20160FF5h, 20180FF4h
dd 201A0FF3h, 201B0FF2h, 201D0FF1h, 201E0FF1h
dd 20200FF0h, 20220FEFh, 20230FEEh, 20250FEDh
dd 20260FECh, 20280FECh, 20290FEBh, 202B0FEAh
dd 202D0FE9h, 202E0FE8h, 20300FE8h, 20310FE7h
dd 20330FE6h, 20350FE5h, 20360FE4h, 20380FE4h
dd 20390FE3h, 203B0FE2h, 203D0FE1h, 203E0FE0h
dd 20400FDFh, 20410FDFh, 20430FDEh, 20450FDDh
dd 20460FDCh, 20480FDBh, 20490FDBh, 204B0FDAh
dd 204D0FD9h, 204E0FD8h, 20500FD7h, 20510FD7h
dd 20530FD6h, 20550FD5h, 20560FD4h, 20580FD3h
dd 20590FD2h, 205B0FD2h, 205D0FD1h, 205E0FD0h
dd 20600FCFh, 20610FCEh, 20630FCEh, 20650FCDh
dd 20660FCCh, 20680FCBh, 20690FCAh, 206B0FCAh
dd 206D0FC9h, 206E0FC8h, 20700FC7h, 20710FC6h
dd 20730FC5h, 20750FC5h, 20760FC4h, 20780FC3h
dd 20790FC2h, 207B0FC1h, 207C0FC1h, 207E0FC0h
dd 20800FBFh, 20810FBEh, 20830FBDh, 20840FBDh
dd 20860FBCh, 20880FBBh, 20890FBAh, 208B0FB9h
dd 208C0FB8h, 208E0FB8h, 20900FB7h, 20910FB6h
dd 20930FB5h, 20940FB4h, 20960FB4h, 20980FB3h
dd 20990FB2h, 209B0FB1h, 209C0FB0h, 209E0FB0h
dd 20A00FAFh, 20A10FAEh, 20A30FADh, 20A40FACh
dd 20A60FABh, 20A80FABh, 20A90FAAh, 20AB0FA9h
dd 20AC0FA8h, 20AE0FA7h, 20B00FA7h, 20B10FA6h
dd 20B30FA5h, 20B40FA4h, 20B60FA3h, 20B80FA3h
dd 20B90FA2h, 20BB0FA1h, 20BC0FA0h, 20BE0F9Fh
dd 20C00F9Eh, 20C10F9Eh, 20C30F9Dh, 20C40F9Ch
dd 20C60F9Bh, 20C70F9Ah, 20C90F9Ah, 20CB0F99h
_YUV_clip_table db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 1, 2, 3
db 4, 5, 6, 7
db 8, 9, 10, 11
db 12, 13, 14, 15
db 16, 17, 18, 19
db 20, 21, 22, 23
db 24, 25, 26, 27
db 28, 29, 30, 31
db 32, 33, 34, 35
db 36, 37, 38, 39
db 40, 41, 42, 43
db 44, 45, 46, 47
db 48, 49, 50, 51
db 52, 53, 54, 55
db 56, 57, 58, 59
db 60, 61, 62, 63
db 64, 65, 66, 67
db 68, 69, 70, 71
db 72, 73, 74, 75
db 76, 77, 78, 79
db 80, 81, 82, 83
db 84, 85, 86, 87
db 88, 89, 90, 91
db 92, 93, 94, 95
db 96, 97, 98, 99
db 100, 101, 102, 103
db 104, 105, 106, 107
db 108, 109, 110, 111
db 112, 113, 114, 115
db 116, 117, 118, 119
db 120, 121, 122, 123
db 124, 125, 126, 127
db 128, 129, 130, 131
db 132, 133, 134, 135
db 136, 137, 138, 139
db 140, 141, 142, 143
db 144, 145, 146, 147
db 148, 149, 150, 151
db 152, 153, 154, 155
db 156, 157, 158, 159
db 160, 161, 162, 163
db 164, 165, 166, 167
db 168, 169, 170, 171
db 172, 173, 174, 175
db 176, 177, 178, 179
db 180, 181, 182, 183
db 184, 185, 186, 187
db 188, 189, 190, 191
db 192, 193, 194, 195
db 196, 197, 198, 199
db 200, 201, 202, 203
db 204, 205, 206, 207
db 208, 209, 210, 211
db 212, 213, 214, 215
db 216, 217, 218, 219
db 220, 221, 222, 223
db 224, 225, 226, 227
db 228, 229, 230, 231
db 232, 233, 234, 235
db 236, 237, 238, 239
db 240, 241, 242, 243
db 244, 245, 246, 247
db 248, 249, 250, 251
db 252, 253, 254, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
db 255, 255, 255, 255
_YUV_clip_table16 db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 0, 0, 0, 0
db 1, 1, 1, 1
db 1, 1, 1, 1
db 2, 2, 2, 2
db 2, 2, 2, 2
db 3, 3, 3, 3
db 3, 3, 3, 3
db 4, 4, 4, 4
db 4, 4, 4, 4
db 5, 5, 5, 5
db 5, 5, 5, 5
db 6, 6, 6, 6
db 6, 6, 6, 6
db 7, 7, 7, 7
db 7, 7, 7, 7
db 8, 8, 8, 8
db 8, 8, 8, 8
db 9, 9, 9, 9
db 9, 9, 9, 9
db 10, 10, 10, 10
db 10, 10, 10, 10
db 11, 11, 11, 11
db 11, 11, 11, 11
db 12, 12, 12, 12
db 12, 12, 12, 12
db 13, 13, 13, 13
db 13, 13, 13, 13
db 14, 14, 14, 14
db 14, 14, 14, 14
db 15, 15, 15, 15
db 15, 15, 15, 15
db 16, 16, 16, 16
db 16, 16, 16, 16
db 17, 17, 17, 17
db 17, 17, 17, 17
db 18, 18, 18, 18
db 18, 18, 18, 18
db 19, 19, 19, 19
db 19, 19, 19, 19
db 20, 20, 20, 20
db 20, 20, 20, 20
db 21, 21, 21, 21
db 21, 21, 21, 21
db 22, 22, 22, 22
db 22, 22, 22, 22
db 23, 23, 23, 23
db 23, 23, 23, 23
db 24, 24, 24, 24
db 24, 24, 24, 24
db 25, 25, 25, 25
db 25, 25, 25, 25
db 26, 26, 26, 26
db 26, 26, 26, 26
db 27, 27, 27, 27
db 27, 27, 27, 27
db 28, 28, 28, 28
db 28, 28, 28, 28
db 29, 29, 29, 29
db 29, 29, 29, 29
db 30, 30, 30, 30
db 30, 30, 30, 30
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
db 31, 31, 31, 31
end