From f4722f2cd884b4d626129e1c5b98fe55930488dc Mon Sep 17 00:00:00 2001 From: Steven Edwards Date: Mon, 25 Aug 2003 23:35:36 +0000 Subject: [PATCH] Added cards.dll by Filip Navara with some minor changes I had to make to merge with winehq. svn path=/trunk/; revision=5860 --- reactos/lib/cards/.cvsignore | 9 + reactos/lib/cards/Makefile | 28 +++ reactos/lib/cards/cards.c | 233 +++++++++++++++++++++++ reactos/lib/cards/cards.edf | 8 + reactos/lib/cards/cards.h | 61 ++++++ reactos/lib/cards/cards.rc | 115 +++++++++++ reactos/lib/cards/res/Background_1.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Ace.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Eight.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Five.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Four.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Jack.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_King.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Nine.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Queen.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Seven.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Six.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Ten.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Three.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Clubs_Two.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Ace.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Eight.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Five.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Four.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Jack.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_King.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Nine.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Queen.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Seven.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Six.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Ten.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Three.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Diamonds_Two.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/FreeCard.bmp | Bin 0 -> 1226 bytes reactos/lib/cards/res/Hearts_Ace.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Eight.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Five.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Four.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Jack.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_King.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Nine.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Queen.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Seven.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Six.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Ten.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Three.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Hearts_Two.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Joker.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/OSign.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Ace.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Eight.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Five.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Four.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Jack.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_King.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Nine.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Queen.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Seven.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Six.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Ten.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Three.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/Spades_Two.bmp | Bin 0 -> 3998 bytes reactos/lib/cards/res/XSign.bmp | Bin 0 -> 3998 bytes 63 files changed, 454 insertions(+) create mode 100644 reactos/lib/cards/.cvsignore create mode 100644 reactos/lib/cards/Makefile create mode 100644 reactos/lib/cards/cards.c create mode 100644 reactos/lib/cards/cards.edf create mode 100644 reactos/lib/cards/cards.h create mode 100644 reactos/lib/cards/cards.rc create mode 100644 reactos/lib/cards/res/Background_1.bmp create mode 100644 reactos/lib/cards/res/Clubs_Ace.bmp create mode 100644 reactos/lib/cards/res/Clubs_Eight.bmp create mode 100644 reactos/lib/cards/res/Clubs_Five.bmp create mode 100644 reactos/lib/cards/res/Clubs_Four.bmp create mode 100644 reactos/lib/cards/res/Clubs_Jack.bmp create mode 100644 reactos/lib/cards/res/Clubs_King.bmp create mode 100644 reactos/lib/cards/res/Clubs_Nine.bmp create mode 100644 reactos/lib/cards/res/Clubs_Queen.bmp create mode 100644 reactos/lib/cards/res/Clubs_Seven.bmp create mode 100644 reactos/lib/cards/res/Clubs_Six.bmp create mode 100644 reactos/lib/cards/res/Clubs_Ten.bmp create mode 100644 reactos/lib/cards/res/Clubs_Three.bmp create mode 100644 reactos/lib/cards/res/Clubs_Two.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Ace.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Eight.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Five.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Four.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Jack.bmp create mode 100644 reactos/lib/cards/res/Diamonds_King.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Nine.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Queen.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Seven.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Six.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Ten.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Three.bmp create mode 100644 reactos/lib/cards/res/Diamonds_Two.bmp create mode 100644 reactos/lib/cards/res/FreeCard.bmp create mode 100644 reactos/lib/cards/res/Hearts_Ace.bmp create mode 100644 reactos/lib/cards/res/Hearts_Eight.bmp create mode 100644 reactos/lib/cards/res/Hearts_Five.bmp create mode 100644 reactos/lib/cards/res/Hearts_Four.bmp create mode 100644 reactos/lib/cards/res/Hearts_Jack.bmp create mode 100644 reactos/lib/cards/res/Hearts_King.bmp create mode 100644 reactos/lib/cards/res/Hearts_Nine.bmp create mode 100644 reactos/lib/cards/res/Hearts_Queen.bmp create mode 100644 reactos/lib/cards/res/Hearts_Seven.bmp create mode 100644 reactos/lib/cards/res/Hearts_Six.bmp create mode 100644 reactos/lib/cards/res/Hearts_Ten.bmp create mode 100644 reactos/lib/cards/res/Hearts_Three.bmp create mode 100644 reactos/lib/cards/res/Hearts_Two.bmp create mode 100644 reactos/lib/cards/res/Joker.bmp create mode 100644 reactos/lib/cards/res/OSign.bmp create mode 100644 reactos/lib/cards/res/Spades_Ace.bmp create mode 100644 reactos/lib/cards/res/Spades_Eight.bmp create mode 100644 reactos/lib/cards/res/Spades_Five.bmp create mode 100644 reactos/lib/cards/res/Spades_Four.bmp create mode 100644 reactos/lib/cards/res/Spades_Jack.bmp create mode 100644 reactos/lib/cards/res/Spades_King.bmp create mode 100644 reactos/lib/cards/res/Spades_Nine.bmp create mode 100644 reactos/lib/cards/res/Spades_Queen.bmp create mode 100644 reactos/lib/cards/res/Spades_Seven.bmp create mode 100644 reactos/lib/cards/res/Spades_Six.bmp create mode 100644 reactos/lib/cards/res/Spades_Ten.bmp create mode 100644 reactos/lib/cards/res/Spades_Three.bmp create mode 100644 reactos/lib/cards/res/Spades_Two.bmp create mode 100644 reactos/lib/cards/res/XSign.bmp diff --git a/reactos/lib/cards/.cvsignore b/reactos/lib/cards/.cvsignore new file mode 100644 index 00000000000..1f43e3d52d8 --- /dev/null +++ b/reactos/lib/cards/.cvsignore @@ -0,0 +1,9 @@ +temp.exp +*.a +*.dll +*.lib +*.sym +*.coff +*.map +*.tmp +*.o diff --git a/reactos/lib/cards/Makefile b/reactos/lib/cards/Makefile new file mode 100644 index 00000000000..546f2839bc5 --- /dev/null +++ b/reactos/lib/cards/Makefile @@ -0,0 +1,28 @@ +PATH_TO_TOP = ../.. + +TARGET_TYPE = dynlink + +TARGET_NAME = cards + +TARGET_BASE = 0x701a0000 + +TARGET_CFLAGS = -fno-builtin -D__USE_W32API + +# require os code to explicitly request A/W version of structs/functions +TARGET_CFLAGS += -DUNICODE -D_UNICODE + +TARGET_LFLAGS = -nostdlib -nostartfiles + +TARGET_SDKLIBS = gdi32.a user32.a + +TARGET_OBJECTS = cards.o + +DEP_OBJECTS = $(TARGET_OBJECTS) + +include $(PATH_TO_TOP)/rules.mak + +include $(TOOLS_PATH)/helper.mk + +include $(TOOLS_PATH)/depend.mk + +# EOF diff --git a/reactos/lib/cards/cards.c b/reactos/lib/cards/cards.c new file mode 100644 index 00000000000..9c78febde1e --- /dev/null +++ b/reactos/lib/cards/cards.c @@ -0,0 +1,233 @@ +/* + * ReactOS Cards + * + * Copyright (C) 2003 Filip Navara + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include + +#include "windef.h" +#include "winbase.h" +#include "wingdi.h" +#include "winuser.h" +#include "cards.h" + +HBITMAP g_CardBitmaps[MAX_CARD_BITMAPS]; +HINSTANCE g_hModule = 0; + +/* + * Redundant function from 16-bit Windows time + */ +BOOL WINAPI WEP(DWORD Unknown) +{ + return TRUE; +} + +/* + * Initialize card library and return cards width and height + */ +BOOL WINAPI cdtInit(INT *Width, INT *Height) +{ + DWORD dwIndex; + + /* Report card width and height to user */ + *Width = CARD_WIDTH; + *Height = CARD_HEIGHT; + + /* Load images */ + for (dwIndex = 0; dwIndex < MAX_CARD_BITMAPS; ++dwIndex) + g_CardBitmaps[dwIndex] = + (HBITMAP)LoadBitmapA(g_hModule, MAKEINTRESOURCEA(dwIndex + 1)); + + return TRUE; +} + +/* + * Terminate card library + */ +VOID WINAPI cdtTerm(VOID) +{ + DWORD dwIndex; + + /* Unload images */ + for (dwIndex = 0; dwIndex < MAX_CARD_BITMAPS; dwIndex++) + DeleteObject(g_CardBitmaps[dwIndex]); +} + +/* + * Render card with no stretching + */ +BOOL WINAPI cdtDraw(HDC hdc, INT x, INT y, INT card, INT type, COLORREF color) +{ + return cdtDrawExt(hdc, x, y, CARD_WIDTH, CARD_HEIGHT, card, type, color); +} + +/* + * Render card + * + * Parameters: + * hdc - Handle of destination device context + * x - Position left + * y - Position right + * dx - Destination width + * dy - Destination height + * card - Image id (meaning depend on type) + * type - One of edt* constants + * color - Background color (?) + */ +BOOL WINAPI cdtDrawExt(HDC hdc, INT x, INT y, INT dx, INT dy, INT card, INT type, COLORREF color) +{ + HDC hdcCard; + COLORREF SavedPixels[12]; + DWORD dwRasterOp = SRCCOPY, OldBkColor; + BOOL bSaveEdges = TRUE; + BOOL bStretch = FALSE; + + if (type & ectSAVEEDGESMASK) + { + type &= ~ectSAVEEDGESMASK; + bSaveEdges = FALSE; + } + + if (dx != CARD_WIDTH || dy != CARD_HEIGHT) + { + bStretch = TRUE; + bSaveEdges = FALSE; + } + + switch (type) + { + case ectINVERTED: + dwRasterOp = NOTSRCCOPY; + case ectFACES: + card = (card % 4) * 13 + (card / 4); + break; + case ectBACKS: + --card; + break; + case ectEMPTYNOBG: + dwRasterOp = SRCAND; + case ectEMPTY: + card = 52; + break; + case ectERASE: + break; + case ectREDX: + card = 66; + break; + case ectGREENO: + card = 67; + break; + default: + return FALSE; + } + + if (type == ectEMPTY || type == ectERASE) + { + POINT pPoint; + HBRUSH hBrush; + + hBrush = CreateSolidBrush(color); + GetDCOrgEx(hdc, &pPoint); + SetBrushOrgEx(hdc, pPoint.x, pPoint.y, 0); + SelectObject(hdc, hBrush); + PatBlt(hdc, x, y, dx, dy, PATCOPY); + } + if (type != ectERASE) + { + hdcCard = CreateCompatibleDC(hdc); + SelectObject(hdcCard, g_CardBitmaps[card]); + OldBkColor = SetBkColor(hdc, (type == ectFACES) ? 0xFFFFFF : color); + if (bSaveEdges) + { + SavedPixels[0] = GetPixel(hdc, x, y); + SavedPixels[1] = GetPixel(hdc, x + 1, y); + SavedPixels[2] = GetPixel(hdc, x, y + 1); + SavedPixels[3] = GetPixel(hdc, x + dx - 1, y); + SavedPixels[4] = GetPixel(hdc, x + dx - 2, y); + SavedPixels[5] = GetPixel(hdc, x + dx - 1, y + 1); + SavedPixels[6] = GetPixel(hdc, x, y + dy - 1); + SavedPixels[7] = GetPixel(hdc, x + 1, y + dy - 1); + SavedPixels[8] = GetPixel(hdc, x, y + dy - 2); + SavedPixels[9] = GetPixel(hdc, x + dx - 1, y + dy - 1); + SavedPixels[10] = GetPixel(hdc, x + dx - 2, y + dy - 1); + SavedPixels[11] = GetPixel(hdc, x + dx - 1, y + dy - 2); + } + if (bStretch) + { + StretchBlt(hdc, x, y, dx, dy, hdcCard, 0, 0, CARD_WIDTH, CARD_HEIGHT, dwRasterOp); + } else + { + BitBlt(hdc, x, y, dx, dy, hdcCard, 0, 0, dwRasterOp); +/* + * This is need when using Microsoft images, because they use two-color red/white images for + * red cards and thus needs fix-up of the edge to black color. + */ +#if 0 + if (ISREDCARD(card)) + { + PatBlt(hdc, x, y + 2, 1, dy - 4, BLACKNESS); + PatBlt(hdc, x + dx - 1, y + 2, 1, dy - 4, BLACKNESS); + PatBlt(hdc, x + 2, y, dx - 4, 1, BLACKNESS); + PatBlt(hdc, x + 2, y + dy - 1, dx - 4, 1, BLACKNESS); + SetPixel(hdc, x + 1, y + 1, 0); + SetPixel(hdc, x + dx - 2, y + 1, 0); + SetPixel(hdc, x + 1, y + dy - 2, 0); + SetPixel(hdc, x + dx - 2, y + dy - 2, 0); + } +#endif + } + if (bSaveEdges) + { + SetPixel(hdc, x, y, SavedPixels[0]); + SetPixel(hdc, x + 1, y, SavedPixels[1]); + SetPixel(hdc, x, y + 1, SavedPixels[2]); + SetPixel(hdc, x + dx - 1, y, SavedPixels[3]); + SetPixel(hdc, x + dx - 2, y, SavedPixels[4]); + SetPixel(hdc, x + dx - 1, y + 1, SavedPixels[5]); + SetPixel(hdc, x, y + dy - 1, SavedPixels[6]); + SetPixel(hdc, x + 1, y + dy - 1, SavedPixels[7]); + SetPixel(hdc, x, y + dy - 2, SavedPixels[8]); + SetPixel(hdc, x + dx - 1, y + dy - 1, SavedPixels[9]); + SetPixel(hdc, x + dx - 2, y + dy - 1, SavedPixels[10]); + SetPixel(hdc, x + dx - 1, y + dy - 2, SavedPixels[11]); + } + SetBkColor(hdc, OldBkColor); + DeleteDC(hdcCard); + } + + return TRUE; +} + + +/*********************************************************************** + * cdtAnimate (CARDS.@) + * + * Animate card background, we don't use it + */ +BOOL WINAPI cdtAnimate(HDC hdc, int cardback, int x, int y, int frame) +{ + return TRUE; +} + +BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) +{ + if (fdwReason == DLL_PROCESS_ATTACH) + g_hModule = hinstDLL; + + return TRUE; +} diff --git a/reactos/lib/cards/cards.edf b/reactos/lib/cards/cards.edf new file mode 100644 index 00000000000..04212761272 --- /dev/null +++ b/reactos/lib/cards/cards.edf @@ -0,0 +1,8 @@ +LIBRARY cards.dll +EXPORTS +WEP=WEP@4 +cdtAnimate=cdtAnimate@20 +cdtDraw=cdtDraw@24 +cdtDrawExt=cdtDrawExt@32 +cdtInit=cdtInit@8 +cdtTerm=cdtTerm@0 diff --git a/reactos/lib/cards/cards.h b/reactos/lib/cards/cards.h new file mode 100644 index 00000000000..44ff4409277 --- /dev/null +++ b/reactos/lib/cards/cards.h @@ -0,0 +1,61 @@ +/* + * ReactOS Cards + * + * Copyright (C) 2003 Filip Navara + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef _CARDS_H +#define _CARDS_H + +/* + * 52 card faces + + * 12 card backs + + * X Sign + + * O Sign + + * FreeCard + + * Joker + */ +#define MAX_CARD_BITMAPS 68 + +#define ectFACES 0 +#define ectBACKS 1 +#define ectINVERTED 2 +#define ectEMPTY 3 +#define ectERASE 4 +#define ectEMPTYNOBG 5 +#define ectREDX 6 +#define ectGREENO 7 +#define ectSAVEEDGESMASK 0x80000000 + +/* Microsoft card dimensions */ +/* +#define CARD_WIDTH 71 +#define CARD_HEIGHT 96 +*/ +/* Oxymoron's card dimensions */ +#define CARD_WIDTH 73 +#define CARD_HEIGHT 97 + +#define ISREDCARD(x) (x >= 13 && x <= 39) + +BOOL WINAPI cdtInit(int *width, int *height); +BOOL WINAPI cdtDraw(HDC hdc, int x, int y, int card, int type, DWORD color); +BOOL WINAPI cdtDrawExt(HDC hdc, int x, int y, int dx, int dy, int card, int suit, DWORD color); +BOOL WINAPI cdtAnimate(HDC hdc, int cardback, int x, int y, int frame); +void WINAPI cdtTerm(void); + +#endif /* _CARDS_H */ diff --git a/reactos/lib/cards/cards.rc b/reactos/lib/cards/cards.rc new file mode 100644 index 00000000000..1b5613610a5 --- /dev/null +++ b/reactos/lib/cards/cards.rc @@ -0,0 +1,115 @@ +/* + * ReactOS Cards + * + * Copyright (C) 2003 Filip Navara + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include + +1 BITMAP "res/Clubs_Ace.bmp" +2 BITMAP "res/Clubs_Two.bmp" +3 BITMAP "res/Clubs_Three.bmp" +4 BITMAP "res/Clubs_Four.bmp" +5 BITMAP "res/Clubs_Five.bmp" +6 BITMAP "res/Clubs_Six.bmp" +7 BITMAP "res/Clubs_Seven.bmp" +8 BITMAP "res/Clubs_Eight.bmp" +9 BITMAP "res/Clubs_Nine.bmp" +10 BITMAP "res/Clubs_Ten.bmp" +11 BITMAP "res/Clubs_Jack.bmp" +12 BITMAP "res/Clubs_Queen.bmp" +13 BITMAP "res/Clubs_King.bmp" +14 BITMAP "res/Diamonds_Ace.bmp" +15 BITMAP "res/Diamonds_Two.bmp" +16 BITMAP "res/Diamonds_Three.bmp" +17 BITMAP "res/Diamonds_Four.bmp" +18 BITMAP "res/Diamonds_Five.bmp" +19 BITMAP "res/Diamonds_Six.bmp" +20 BITMAP "res/Diamonds_Seven.bmp" +21 BITMAP "res/Diamonds_Eight.bmp" +22 BITMAP "res/Diamonds_Nine.bmp" +23 BITMAP "res/Diamonds_Ten.bmp" +24 BITMAP "res/Diamonds_Jack.bmp" +25 BITMAP "res/Diamonds_Queen.bmp" +26 BITMAP "res/Diamonds_King.bmp" +27 BITMAP "res/Hearts_Ace.bmp" +28 BITMAP "res/Hearts_Two.bmp" +29 BITMAP "res/Hearts_Three.bmp" +30 BITMAP "res/Hearts_Four.bmp" +31 BITMAP "res/Hearts_Five.bmp" +32 BITMAP "res/Hearts_Six.bmp" +33 BITMAP "res/Hearts_Seven.bmp" +34 BITMAP "res/Hearts_Eight.bmp" +35 BITMAP "res/Hearts_Nine.bmp" +36 BITMAP "res/Hearts_Ten.bmp" +37 BITMAP "res/Hearts_Jack.bmp" +38 BITMAP "res/Hearts_Queen.bmp" +39 BITMAP "res/Hearts_King.bmp" +40 BITMAP "res/Spades_Ace.bmp" +41 BITMAP "res/Spades_Two.bmp" +42 BITMAP "res/Spades_Three.bmp" +43 BITMAP "res/Spades_Four.bmp" +44 BITMAP "res/Spades_Five.bmp" +45 BITMAP "res/Spades_Six.bmp" +46 BITMAP "res/Spades_Seven.bmp" +47 BITMAP "res/Spades_Eight.bmp" +48 BITMAP "res/Spades_Nine.bmp" +49 BITMAP "res/Spades_Ten.bmp" +50 BITMAP "res/Spades_Jack.bmp" +51 BITMAP "res/Spades_Queen.bmp" +52 BITMAP "res/Spades_King.bmp" +53 BITMAP "res/FreeCard.bmp" +54 BITMAP "res/Background_1.bmp" +55 BITMAP "res/Background_1.bmp" +56 BITMAP "res/Background_1.bmp" +57 BITMAP "res/Background_1.bmp" +58 BITMAP "res/Background_1.bmp" +59 BITMAP "res/Background_1.bmp" +60 BITMAP "res/Background_1.bmp" +61 BITMAP "res/Background_1.bmp" +62 BITMAP "res/Background_1.bmp" +63 BITMAP "res/Background_1.bmp" +64 BITMAP "res/Background_1.bmp" +65 BITMAP "res/Background_1.bmp" +66 BITMAP "res/Joker.bmp" +67 BITMAP "res/XSign.bmp" +68 BITMAP "res/OSign.bmp" + + +VS_VERSION_INFO VERSIONINFO +FILEVERSION 1,0,0,0 +PRODUCTVERSION 5,1,2600,0 +FILEFLAGSMASK 0 +FILEFLAGS 0 +FILEOS 0x40004 +FILETYPE 0x2 +{ +BLOCK "StringFileInfo" +{ + BLOCK "040904B0" + { + VALUE "CompanyName", "ReactOS Team" + VALUE "FileDescription", "Cardplaying Helper DLL" + VALUE "FileVersion", "1.0" + VALUE "InternalName", "cards" + VALUE "LegalCopyright", "(c) 2003 ReactOS Team" + VALUE "OriginalFilename", "cards" + VALUE "ProductName", "ReactOS" + VALUE "ProductVersion", "5.1.2600.0" + } +} +} diff --git a/reactos/lib/cards/res/Background_1.bmp b/reactos/lib/cards/res/Background_1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9cdd6a3649e4873df44d5adf15de4d37cc9b6ef6 GIT binary patch literal 3998 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 literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Ace.bmp b/reactos/lib/cards/res/Clubs_Ace.bmp new file mode 100644 index 0000000000000000000000000000000000000000..951ae73fecb3c2daf16036fa6f01d82e68712a28 GIT binary patch literal 3998 zcmeH~OHRZv42IpRdm_{Ww9+hCB2JK0-mu^hT!M8^!dZH=^2aXHv_!EH6|))7B$_tg z_?7qc_W3{}AE=*DUQymr8tPE*C0squ^GwUK5Une|>s5>W^TkHmXD}n1k_K>{i7^8+ zxdc5PE;_l;`}AeU9ClOJxVYE{7Z*789=nn`+rI>)ap;RVS_c;zPSo3Wi8$(DgSpbG}W~y7DIj!H(nf z@p8ATDJ|B2>W@HJk@r&67cs#OQs4%{(4@;A{K-v3ZHr=YG5;0v-yHnQV*1Ae1$@kS znRCSZD9ZCK!t5i89hWh}b-LyojnC&g~; zuz*xCU0?LbT?I7`)KFOy<>X3G!?txzt{4tZt}G6YE%(0HQ{Q}Jj#Z;*)Oa~x`Kq#U RRVFuPZZs)Q132&f_Y18*PFer} literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Eight.bmp b/reactos/lib/cards/res/Clubs_Eight.bmp new file mode 100644 index 0000000000000000000000000000000000000000..586478a0b9cce14a08212b6ac66c3f19dd98f126 GIT binary patch literal 3998 zcmd6qL9&}L42B)X`_j%k0GVOYWv3@_7;n0Ghj^FhIw$E_ak=2N*% z#KluAXTr|7Tex&_G!1V(@xnaCE-t4oZk(sCaqBv!FuN%def&K7cuNR_oc*M=N9@s2#dFe)CxZqIvZldC@MSiO@(aAeUX;ap%cm=m0dI!g$ zTb$2NGH7tF?=;Vvqi7IQF<6+Qp2YhE6Nxka0}j;=9r;y#$cZB3=u@uyko--q?876j zj9+qP9HYB&oA-wVH=N#II;zumuADco?_9zmiH1w8sSYKw%iGPm!QMaTC?CkycV34} z#-;1pwVvjT3OSi|V|5dcS3Jula;p9}Ihzm0v$`FZDxNhT-W%O<4)RKqGkvFYlPmj> z;0EXV?l>N*9EvN`ikC11iAIt=EYX<~OeD_O$S*N<&QX34*Ey~Hsy^fdaH`MGUsuht z#U(PTU-!cCBSKA8zrwM`!y{*t!+7!t+c?{IYUFtGNK{j<`j9-#VN+GTpN1nQG+x+%6x)YvhMdg1Yaj^-tz^lm zrbx+>mE-5n6N!D}{EFiP#}|%OVzikd}%JNC~uKL5P& zm*m0Owmv@9aA5t-1C5Ox;iyxNn~F*3RrJ_W+e`%0JW$o+1+pd@!+{seah6%{nb5_f zTg!4cwf>OYn8cTJhq4|~m*d00W6Uc!Y30G?JNqvCC4H}vS~ib#p5(bW&s+y>{iX9* z@hum)2!@-7{J^-2ziaUX}QMX6McJ~>sWq-B5S8IR&{sMPj20Q=& literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Four.bmp b/reactos/lib/cards/res/Clubs_Four.bmp new file mode 100644 index 0000000000000000000000000000000000000000..79da1a68464b6bd0f63cb006bd61409f8dd3ae04 GIT binary patch literal 3998 zcmeH~L2`pI3`GsYzDy?vATunw?DPbN@urI&qL=78C+S&ov-E$-fSj1x-F8p{Sn~6? z1+-S?kMAcZ_J#8cj&~fNI2zaCoLX<(%jM#(*Q;~48@@NwQ*OSMk@gkLITURgz;#6| z1Yjl3kI<>%+Dgtrutu+eU=7#xV;wiODK~H>#>DrWGT~@)g-IUXRE-?{j<%( za|rA~Z*oYOJ*vlS+jM>Edyd_>Ft~GLpYY<}b9^AnqomJhh<~c<@JTx;h9%(GRwi`Z}xFtj{CwpaJ&b{d+`6> z1KA?-4>m^Qd(SQBR})URurjAxVwt08tP=KMAr`&tey$^h(-L5(J}?|>pRikR2q=2O z?ba`bW61+eF`Y-NMh5J>ETOzmOFYkUOf8qzdjVyE7-|C=+nuzKZ@HfIgqg7p(X;iV z-o(nv!?B$8BNqtRIC<;;iQ_;B+VxP+`l1&(WIVEeHRB66H?qF9KhqE{45uW~U2bmb jIIJwAVM97EQnSHKJ91&j^x4qD*;uYkuJ-q8?eE_oDWV$i literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Jack.bmp b/reactos/lib/cards/res/Clubs_Jack.bmp new file mode 100644 index 0000000000000000000000000000000000000000..923b0b145080cfd80d053de68f95c5014a9a5be1 GIT binary patch literal 3998 zcmds)OL8kG6owBJ^8nQg07`=lQ&|D1m}GDlkxgXmm1Hg6ne&~~QqpZ9%hMZ5YPaaG zf6j}CuRs3&MXdeB^;f=s@comolfd=d;^F7p+nc<#y4v*(y`PNh>e8ak9q_4kt>1b~TXTmxQ2iDDDoP=J@UnTa% zzQftEE}uH_9q@`$<(Zb09$-U(bz zflA4yH?QJPTu`vP9;B5N#l@7cq3o|8^t7kD#84tBIzCROXIyOut}#}~a1^=|*J6xe zj{e9YG+ON~2;Q1rNQ?SwaM#)h1%i01dU|K=IPOhPR1ib4FZA+Q&#E`DuQm1grdOWm zrPRe2%Jin!zS3*bJ9-i$&Of)$dlwvfY%)UKulz87TPrb^T-C=#KFAi<*Divfmy`l! zx8z!K<}ZQ`Jz_^N7vr*A2=h#&G*X-#SzB|tMoPq*>TO$Ga%fO^-ln_ijVF5DAwtT+ zbiTQ^J=5#m>Vt~LE&}*WF9fm>COHetZEiPN+oxXoVqD?&S)6%4SFbe?!sIqQi8J;f zLY)fPS6ll!emIC;Q-4XnYf1fCG_OznO=-K^ zr-D!Q2CJ*tN3lpJ9~(vEAM3@l+^WAU&cYNP35<}7@mVp3IC59E2uz=u z#g+o)NJ6l8;P!_RbiZWF=>n(oclMl%^(uMfs%~LgLb+b3naPQ$z*{?Vw#7#D#(oCk zJk;Q9_dIesxTSJba)%xuVzwI}xm}M?DaQlbsBgRbkz;Oqvu`r)of|raJNaQpimss_ z|8ZS8S#bCZ$2=o0Z0IXJJ@Tj?{!)G6W?#|M(a}CTLTNt6zFiondoIB_aT?LC$Hwn) zy47a2UE6*R__VhZ$Ck(B;X$u@B-Zop zWyj9rQs{e!Pn?^T%Xh((o>$K7f4uCv+8?-;+c3}m{LeT|$d~QrZ@1ulLEhu?1!9ks P|2|9{~97vBHi{Y8Gk|8sjeeSMYJ*H?LadlPwo$KU&@_tBT{ zk2+_c{f2AqpSG63xlgg)Df^hK;zXX{nnX2EaJ{?^!k(BvwCO$Dnq$w zAIDoUE2)&Shw-w#m-}_#& zY!`0Go;dGa48G-@OCAmaz0H?geNfk<2e+5Nf!yV?igs5vXN#Ea9%sE*??ru za#v4wEVoip0)#bbniO2vPU98XOvs{=tWlS2^|suOgIi8yVBnr2T1Jt}3q9AmM2u0? zO7cpM)^6+?EL;}?^(^{n7el$_T=&%__;<8p1>fp<=)s_f@vc`ELdU8*8lOGp7Z+?% zUJ;MM>0lNd9){N7@WJaQy)FEk(sTWTFW?&1@{L`iB0FjyQqRiM8$Fvu$q51tJs%tlEb^~l;n1$fbU?3ohnZ}*^J|l7h#Q6=*uN4gQZ*}1N4^&6hl9$Q z8$pv}!|l1C&diPT19#|+3wHC;v0KtE7XHcZI0B?m3*i|!jA_MIBcDwtM|I@!q`M)bT^yW{8 iy9_%9H-9>O&OIb%C-r`wMep`pEEIm`m>3 zbrLRiv780#ao2D<#7WBYk$B^r;t?+7&*r98-YLxP7MYei;^%P-VPLN4Fs|-PlAg>J zJ)%uqAr@z8FDmDvr}HuHiYy%OgYo6jb5j`Q-`vtVy~LAfur_0_;ffj};Zm%|ORB1d z=y133E6>CCx4VKUdA0vA+rf{|v;^RIc?y>kuW;3C4yo!S?5z4SgyA&H0NT3A4aE{I zrdq52?6`%XD-ia_BU0=3@@PDn++{VsZ7^*aWz_xgm)itSPUn8^N4jIOz>*Gxi#;h$LG5P%1Y1bsT0l*!XlGla^5|d8v-9 zPHG+LfQhShwD^tRa_f9lS1z9ROlT5Q(GF;dP2nP;Nz66!Jc=VJ)#v;Q2!?K#>XTHmByJY<8RH!P{D z8X`Vv|95V^US2PGeZ9(1-1-r>Suf03hb{-^l8D-lGwWA!JRam_&3R>pGyKg+JFWrS z3*+<=v2{{QiHAqdt|@1aus&yx#6E|h>*`$fQliGAx>1a@a`p;<1@%!#TgHS9;Oa&? zIK6OKrGa*m*T&(MM`Ehg)Lz3CGhU&5`~Ou(NneVP-hPjLUhP zeLH;5xFj2p+n;mSFh)NfaNF_8h7qn`M**KUyJqvyPn%EW^y6VCqUDu&%sY^{jMG={ SUC_8)M4jM{ey<+={{0JY1Hl~t literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Queen.bmp b/reactos/lib/cards/res/Clubs_Queen.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7f4fbed20a4b3b61483cf0c17805dd0f3b12637d GIT binary patch literal 3998 zcmds)L2~RS5QZCyeL$rH05yv&Q#k>eVv|JN_}^ek z|8g7|E_{jg4)zsynEMuo%iDMCS#RMdG5S-y?V&2cT03m3jQkmAA=o^TR;>luvsz2*PjwSFZgCAkep9Y>Z>q*)eZ@61zPa$=hz@~pV<^Bdem!#BXw1B-n_f@?i^9{h(K{e^objdw8Pon_B|m`+!}{oLPd+A?|tX_HsX-zD|_NXKSm&m zcj1c51%33kxQ=5hZHhkG>ph~bB^U0rgdE2jr|2_xH%}BXkr#0hgLq|x@uj;TiNc&k zPp0n)$IO*0d*WSmSiSY)$Oyqt(ThEqGk@!M%K^u7Bhd@zEV&w)cz%l^S)d*gedZ*` z#kQ5r`&5`)(XQ%iDYS@qS4&D&0XXGYVrPZOTUl#jt{Zj-&P6$TD13be@Fs+Lb+^9#g`1 z7AB*Y_9)un9UOr$m9sLl+M|XpMW0ia{OvL8Ofjl@(iz>EBu+m$xQ)9fRq zHKJcR)Fo7Thga`#OEqj?IR(q2LJTleIj4T;)^q*{HU#VeB$vQg0%I&B*00^_955JA2WA(d71xQ{*7RkhJY>U2R3NvTTgRF8GOC=JQ zct-(zMxwVuo=Hk1wrB3WpbkSBPP3VXYUOf;sF{bdm;4B}t(+edPScrLR}zy#^JnEU z<}{l%GSk$>81^fBbc2gBs`QQM`?bByG@ZR>o(8R1Ex5$1W)(&6$}kODt==v`YaW_)0O-7eQ5&k8ixDhz7rikMvV`OM3KhZaLaA&VOu$;wGL8w#6q ziLGU(3TyQh=ak{CurwF-d1NcOveyhTZY=dRYONk8gOguv5v|j|wr!qOWh?AT#LGBw z+H%OfrA}pgN2jDMT+zOp*(7KXck8#iu`7j@(~crJI6gKm_aEj?eubGeCQIUAz!+Qb z*w;?nw6`&p9o*qLm`I)W$rD$orppJ56OO4WLIeBnI4qpvZALZwRyjFL4s*ka(lCaE zk@WvKIo{dd<_@Vxj~pGtjUyKvv*L{$U)j?UN}P`@Dy})zVu-$-?a4M=Mc_Ed*|>oi z-5z7=8@Gu=fiyJzKR4r*Ksqc0y(rO7_C_4IMWAEeV3IKpt0%viBW)YUU^w-NxH(Q7 zUO5bC$S>pv_2hSO3h83ZSM-2-&cp8yE6cB+i_7}c;nOkWou&K?oZM%`d?v1ZjU5^8 IyMO=w3l8K_p8x;= literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Seven.bmp b/reactos/lib/cards/res/Clubs_Seven.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c5697e2063a4f7221131499fbc1d247a24fb7426 GIT binary patch literal 3998 zcmeH~PfqMG48}86_Ed-ibfj6ZeBuO|DjOCYf=jTTlf1Lc&E|b}>ekL58jwId3B$Dc zl3$#-b<=cy`FrQs-f(=x?-{>W{0`3JXl+#Ta=Ezc_3GU1hX0#t*)KlrBf}ps$GB_f z37p@>Vg$Cs%}nfb&7Sj+4YWBdm0SS1{oDSm$1Hc zt*6`jB6YJ``QsH&7&-?uivCKD?ud*-XRYx=5IAM`AAzRTmQ4xzcc4ieqXg-;$V&{l^=wAQ; literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Six.bmp b/reactos/lib/cards/res/Clubs_Six.bmp new file mode 100644 index 0000000000000000000000000000000000000000..301e749878485fd331ddf2d66021b8647faba9c1 GIT binary patch literal 3998 zcmeH~L2lzP3`H5k`wD{`zyZAIaxf=Q0&Qk7hv+3{os;w|xmo6uG;7k8BcZ?mEl?)5 z^`&P@lp|WX{CRyMvA;M!F#oTDWtuh%QxZa1R)9pAfaX%~OBk>MwpQ)$|H z0yj3XQh>F%Ovg^{(8ZOK=AM2_$;TeT*h2_ zZqeP`yoqsRhuxy(hFxyzzVvlyi**1Np%L4PsdZS&#UFY-%QJ{1pGS*!63m~#FkgIYab zIWp7#lk?-@{=D}6BI4P`BUh&b7oaGlX3}NAo_vOvF1Yj>MwntJi2kyotBwp}x+^mb;tt<6(bZYriyS^xMvVpc_B@ u#b3hK{GlnA9x~jh+|=mRxO1G~ig)#goo=PgS1p{cs+O7S{lD7#|Mwp?`t}0= literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Ten.bmp b/reactos/lib/cards/res/Clubs_Ten.bmp new file mode 100644 index 0000000000000000000000000000000000000000..38ad58f5bea1a1eaf05dd81aae8f3887574a1e19 GIT binary patch literal 3998 zcmd^?L5|xn3`J!_`v%1vzyY%8vgiqvz?&|5h+d-WoTO*T&C>r#Q6^<4PJtPqKsggz zpL(JwF>;d2kKdn?*e_ha;PoA^pLh)^;~MSYi6c>`@Egs zjJkz=p3(t-%Zh_W>h*nqXtcKCsM(cek%di|t+4l#W9qkfrIK<5X=$wSn7lOyh7$uq;ko4(W|e1keGZ<@CP=uJVl&O+p_Y zx%S(QE3h^vfo;VL^+JBbbnNnzAc#iu5s@`rd6@*QLKmz#FC0V94krTwr{{()7`jDk zTzV{?uCvu^_UrasfsiP*epO4r4Q^dOkeggzzmD_ya5Ar5ysi#dtvgo>htV|bsan+R z%FonHgHoKxina_CFI`zb!fa@Gj+#?A{YW%dsDn9$;{{oo6)0=lT?mU; z&rRd{bEIDZ+H`bBQ3m)6DU7LQ+fI2(p} tNAknQ^=~voyp4WyeGn)6Y;$bgW!{U{ZL8mW!kKt-C->^_)mMN2{sH`astW)B literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Three.bmp b/reactos/lib/cards/res/Clubs_Three.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8a2dfa521745073665657a57573909a9905327aa GIT binary patch literal 3998 zcmeH~%WcCj42ESx_Zme8Z~z~AEINT4@X|wv=n_3=lFpLN(w~y!P%>rlP#`E!CUzwH z6GiGlIj4{BCl}=l_ZM96xIS@p&f}iTAgbr{*OUK9Ch&D&@Y99iJKh^s`f@ViJ?LqI(Kre7hG(l*$Yrgj%ZT* zExBp*77qR$RIc!^7Vqc=d}PFMb{hw*vB-#3E<`Mg*v6fPXRY6jy-FM$Z7=;pL(LwI z?%2s0u5m;`PTR3}eK$FXM?9Gfn1EF<9heZ6TNy4ek&=hc^kv0r4?!I({uL$%+x|H5 zT({#$#{aoukeBM89G7f8@62zuKdM~0-y*mjm(BjIaDkgbQh&EQYy7Pee*>!^nNnHL zAyRG5n*WerO!<_EBhJ0k_Zxfo2+rysBAzV%l?>N;@V)k+(EW48fGpL=j!QfubjNc4 z_{iCn7)Lt7+FUvk+Z-Ehtgc9u_G`wlZ++O~RuRKe?XcOh` z2A5dnDZWA(IN3HtYtrGnJ<0t>{*!U+fA)Z#1Tn*_56pP zgn#w?m&dz0Dhdb<^G1VEsl|nx!R|`px~9Rz;V$D)EU%nb9tu_BgrZVp&ia4V`v3O_ D&;crB literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Clubs_Two.bmp b/reactos/lib/cards/res/Clubs_Two.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e1066aed350968ea3adda1f990467b2c6df7deca GIT binary patch literal 3998 zcmeH~L2m0H5QeeEzE+h3*pe4rKJ^6HV$($r(Mxollk_aPS>8W0H~}*jqpIChp|u0U z=YN<90ldC{JvlC)xWC|f!}Woya~}7y3|aGhKD*21;@tI$|7+IMuD-UB{vVhrHp?=C z^Gz&9U@dNOoryylP8K~EgST-QzhQjC$;K@R!=e{S(BLyom@QlvM_c~r8#DL? zV&Zs~81#OcTZd;;{*LG0=w=?2+=6qu-s)U$;UEBotxUb^yIIRi$?>oM)aHng#lvqd z(q}ooL%q=r_?x$fr*53I@j;DB7O_5`17lglD?LL-zq#Pgieu~dIf}L~#z%s+UK|}l zyvNIKH7>@GeQkp2+<*mYR}{ZHLYfawO^cpq1%2dCNeWDly!@fOSl1WZdSzVytm|o@ zsfJSKn=HOC1u~%&#xzfPi%1=TDV^gZRO0IWh&t$DFI!mRu-+H@o0yrCEpg)_MSN?d z3UhSJq6uiJ+)nS1lOw=Q;*i4zlsh^c-;P7X^G!TeFl0o)N1lCG(H4%6P=$Tp5N>a+ z+rPtcFtxMHB7UvhFfTrPSgDF04$>x$UkMbIyGiu&`F!uoYl&+LCax*Calz+a>bh|J hN>z7e7U3}Qs}oQLp(>np{*}*aEz+~TuUg-K{{wH;JlFsL literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Ace.bmp b/reactos/lib/cards/res/Diamonds_Ace.bmp new file mode 100644 index 0000000000000000000000000000000000000000..27ba5b43dc5bc674aa8f20be7a840b2edbb75f12 GIT binary patch literal 3998 zcmeH~O-=+M5QST#YdwO7bmF=R`^oHFxDZkY@Di^3B%Y;jHa?&i0u^{BM#p3-{S)Y~ zi=vlOAm_~e@VxRE4yM1xT4o*uj4v~8Lh8fla`p)uN38$OeI8uwiyqMBcjDJIjjQbj z%W(z)R*9w$859vwipC+p8ifj%0=BkL;bL6J6kmwKg~Sz4;I( s*M-cbBTN0MC}&RU<)>g`Vduy=qUV)w8mcPxcB|U97&-R5%AS8e0WEDx(f|Me literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Eight.bmp b/reactos/lib/cards/res/Diamonds_Eight.bmp new file mode 100644 index 0000000000000000000000000000000000000000..b156af449f1380e9c622e6294b00eca7da348f96 GIT binary patch literal 3998 zcmd6qK~4iP3`GlqH5>snLSjvnebpTc7Ic&Ya0%8u31{ieisK~Y+fHUeg(|FeIzM@J zY{xUx?%uxcHf*1Ce5Us+y+7!EwYj0Aw0n?;!(nqg9%y2gaG15;H_D%^x)U1ufHCKPK%s#X-zQpV;6f)pUI4jHzF{U3Ida&lUzliA zaP9rjbs_JbW2pz$rp|R9&p2(lE>73;L4TnUUvc8g34fY=%dE=V)UR;5jx;XnmpQ#J zak$0leeQ6gPx2Bie~!%;B7HX29rb7WFnVnGqYaSPU5_(;*zreKMsy*pwXW^Mc6`E7 z7Hxl)Jdg9rQPskq&J(oYbl-tSPVWP1{zUuberwhF^Gzxc?h z*58l#2m|wQo=#J~{75u&IFLBn0qGDCK4*?AW~Rh|^ykGK-ls);I#1AvbCdXoU6+^NSqn#PLt$f%;_* z>L2~#{ZRN@z5k{7*hlA({80%y^JO^a8~?H_nvAcH{*D{XWAu9K$5m!xe53zYNB{qR E0|d$*$N&HU literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Five.bmp b/reactos/lib/cards/res/Diamonds_Five.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d7b7e7cac9c0a591a497e11a672899fa6c7d40f6 GIT binary patch literal 3998 zcmeH~K~lpo3`GkAYd8W-hZ)v*yl1*&!GdOd04~A0C*dr;S^1Kk=F4&tv+Y#V27miS zmXt;zyU*W;joJ^6ulRo8`;G6-<_7mgE_gKAgjX`M%!w%wPPr*Wsh)QE3#!XuY2FVfi6kJjp;sb9TF`pQu; zXn5ImiIiy`HuJ6TJD^RjzK>_Px-ZDiEq`^Nnc+;I5=N}yFQ`RbJ|7xfuRqrZ#c9JI z8i4KlbDZmgGyc$-#f7ofzP=B(<1>zmX#4ZzmGd=`nG36nJaQJTON&OaY1cL(P-k# z`3S`5%;oFG@kqd|Glv=c5I8^KSZ7ZEMHUD4XG7X>RDbcueK2$Sih+eFt7P#!w%mEz w4KkPWaEmli;`0rj7#S9>n)ULZoPAO7?#6xPm1@!QzKe)13fKF-+WY?d2il=BA^-pY literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Four.bmp b/reactos/lib/cards/res/Diamonds_Four.bmp new file mode 100644 index 0000000000000000000000000000000000000000..77b234e309626d5055c6813245751285c36e9a10 GIT binary patch literal 3998 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 literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Nine.bmp b/reactos/lib/cards/res/Diamonds_Nine.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7be3f3f6866966de7081857f2476dcaad7564da4 GIT binary patch literal 3998 zcmd6qL2leI3`M6wyH1bLU{E0I2-*kPb&*A5=m5P$)^n1aWp0*|lw|);NwyX#8e+!d zFFjEdDcj?x=eOIF*{dAy<@-y%f8_h+^i_^*-$7n3m(%rnm6mt;yvs*^C++E&yLlAm zE*;wMAHsb*#8MLMheX+I2*iNz(!kMpp-BUmYCP2=YUBp%O^XafP8{~~ zmo$OI_3P2u&#{J9eoaf5GyB<=&GR~MMNaxlo%jY0{d)UYo4*04&6K|n=c4ntX_~iR zHycabU>_)m+-P5U4)>+@p$31n&jlk5Tri93$&55`G+s#3z)?KvaS)$uAiXnfh8q2i zt|J{u+**&Aovzw($@dp6qsU+Oq6^^bc)(%&b!g8Y=3|GW{O)j6uN`jIAJuEeUsFG2 zd+R;UU(D02^(xx?^Zl!K^ZI&$#`t`_P$TE-g&H`YU(&$&dXWZ>#!D(l1J~4R5MNWT z(R!PD4e}=u<+{})XpAq_>#cI2nOlM85yt zpH-aOy~^`ef6;Ysn&N{x*#OX)v%e_qeXrdImOtD_>JN4CXVc)m)CSbR(LNW9G;qNz zswXqjz|nXiNoQ`ca$r2_5q0JCfraZ+4t1T^HVouTIlQhaC$AV9k@ju|I&(5Z)NVWI zNwHW@wtclVt$lcs{n@JxHaF-0my^uTTpyBo`UBCd!aWx{{k2KgJNv#m`~LeE;N}@z literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Queen.bmp b/reactos/lib/cards/res/Diamonds_Queen.bmp new file mode 100644 index 0000000000000000000000000000000000000000..03c79ca9aa545472b206da47497b6e9be2ec010c GIT binary patch literal 3998 zcmds)O>QeU5QIr0T!$lI_7n{PS;xr!!MiL1kTQ6HTq5gtlAOgid-%nx2ac=7$k@$@+^ zd;@drpN^Kn#ZO_q1N#hje*FDQxQEBb(^vQ&`|}?^A+9Qwi_!1=*7vFeS8MmFFpl+O zTrH8|Qx2uxMyjE&T*qA!U|_Y21j3M z;^AaCuNk)m_W{n7^uXeA)phSa;xlL9HoyDb3|m~OxsLn%$dJ4(b|O0j8cu4iaU)YT zd&8Zp1TOPp`rdG-lLUfWB?aTk2L4KC&CPUnr1 zc=G%~-N3or_kIKeG3lTDiVnU+!}K#TAr$UDe+C2RYC(1(IGJ44w^4uLq6;PS>8ejF zoGV^9YFlXz-Vv=M%2i%kD;VgGF4axlsT6s_9lQD*K4=CAV4iW*D3c51W59yCh}emb zwY3wjz@~L1)|&H-JIh6N0YVFn%HYC`LwRIbgb*z*f4S`COhbaL>b+LPAuG5npu=~e zHZxysn<$Bu^-C(^5`;!~!?$A?oCgS9D6S!I&P#2WMIV|-qzad~T<|rSb-B?3;`5ET zE59m33E;8<=eUb*_KVwELxF~%zUJ1vZE$7;inqL&Cznl>aPU#Kg+6viLi%*!bD0QJ zUPK*y@W)M8(w8#dGman2#G!1Agg(hz@`bn$+@Yi#jc(?XTi~4}=D1`x$C(aP|lQAMGAbC!RG1ZaglC|82h?`ta)0 zxnFR0;9tkJBO4!NIAK%IYQ!B65VttXpU%rI#w~6mEek#r7#{-F1m4Oq>yuL9BvAQf z1!!vWt4ZTSAj^UtG~9juK=J%#J`h;Db*X;Kxbg9t7o9@%g1U5o?s2bm(}scJ$Rb+f z^e9c;2A}rd*JiorGn^LCVhm>8h~ts_5^8nvbK$ImRyHql!>@JFWo~sbaH~7FbHaV~ O|J5gf|9^yU-2V@*MhS)h literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Seven.bmp b/reactos/lib/cards/res/Diamonds_Seven.bmp new file mode 100644 index 0000000000000000000000000000000000000000..14ee716eee888474a33a1aa69ebcc01b76c40ac5 GIT binary patch literal 3998 zcmeH~O-{ow5QPhZH5>sHRbpMsd(<5Z7Bun!xCHB-gtPQ!WoB$A?>TmAB*X$SYJQ&m zc``G0l4k$YJ=;CV3sKEq_nvyldl#tTduxRB$?4pAeQ^UGY; zqck8V4l&)3^-$KiJ|73ID)|dOUoss{OPJe&D=?Fmb_b_r=>b3csb@4^Av!;CO_nVC+u5te=h+Mw^&4KJtBZtouWl;l1&nLl11Lw@V zdNLyo9E}%}G;kD;dThi;`6<`RR~%HIe>w)QD-mhaY@ms&KmTkTbF-`R>~}a{UY7IC zy^v>as>WB=QQ#Vf^RVU*=XHgnb+W?Ix?ACT{n5Hx@ki@!ja#fkfm8kTl`~s=KJ*m^ z=HWb^Mt}B7T=Zc>A-{aPO OX|MY0{a)?;{`~?3JScVm literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Six.bmp b/reactos/lib/cards/res/Diamonds_Six.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8724bf1f2a57977674a9bb29c1ffba6346ba55e8 GIT binary patch literal 3998 zcmeH~O-{rx421^-Yd8X^8i_Sg_h@!3STI!%z$IAENjS^gYc087+cZVC}4iF(7q zu~(ve(&2}WA3Bu5r0>Jkl-~uIqdQbOae^VFS(Hwkx*o97iSsM>C-#|J@z*aPnS((q ze&MmwoSlz4F0ek!y_AFKO`OX(x5RBdFAtaYpgp8n=dD<%T8+QecvhSEqYr%uQ$0?aVzULfXuDcgPI$xFRDJlhSF(XCo+dwM3hdPx*nv` ziTiW?3wOcx*6Lrwjpl>$8EkMpRP)9`^LXXVu;{$mi1c1q{K6~etR#QKE9|U9PF{%v zoV;TDoUGKdSjtcc({(mDG+8JAenpTQ zkL+t9Lc5-=s=_TY55zUXJ_Zg`He`KIdzB0M-1Qggvl5@LD)sd+V!ndMjXy6*h zeRzYDJ_OFba@vS}aeH0YzOvhR!=Ha8HcsA?W-R^?IXS$Wudmde#I@J&W>bH;O!Pif z4Qt_Qd~v?(#w{h^xE|?R7q4H8pLOLtuGlZu#KroGCNBB7r6`&>c^-j?c5cpR>j%eU z0kf{$WWUKcKjThLVl?O5& zmR~SR%Q{Vs>E|^>#OCYzNzmCJ%=hJ~ZLb{H_Fu-OOV!UixBG>2p#6~vYQD(%#_yKBSe3SOt^-uWk@76yVH@iMdKil^5 z7I}%A?Z32@Uc`=vE)!W!q$FZcj>;P97 Rc+#&h>R8vj->cs5-*4psKI{Mh literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Diamonds_Two.bmp b/reactos/lib/cards/res/Diamonds_Two.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7f2c1272b8d9f95574e691fad52881efd9fe56e1 GIT binary patch literal 3998 zcmeHKF>b>!3`~o5ZlBP?2+%o#_99z{4z<7s^b?)^lD@@1ODS4XC`XJA=#a&PEz{!V zL{YRD9Y24cb|OFAzVZFR_cz~ny9aJ-c~-B}H0|bj=AIK@C%*Uz%CV2Te`m}qb>-`Y zagSXX5yN`8(H$V%;M^YJa}+#=WB&pFhCPNGc^U{GMM7X)ii7~pM?wI1pa9{Va~|PC zagrr~e>cO0f3KSt-&14fb8s4G=kvgcULF3`zg9VgZurp`VmV`7AZ5j9z{c%ul#pQz$<)G5;Gr{ zkE&iu|H8)>RhiBC%1DKd?0Qu5+4ZRQkL-G+=c^nzt0^uzerKc7n)#yaS-mZe7s_W( z+Rw#56gSWa@o|_ToE!<-j-}odKXl!?gn2!Bgc%p0dB~9pn8zxg8^2h_UFY*9F#C6D Nse2+0J+GqY-#>&&M2Y|a literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/FreeCard.bmp b/reactos/lib/cards/res/FreeCard.bmp new file mode 100644 index 0000000000000000000000000000000000000000..984b0adb66a19974fcfd772d7e25f509d457fced GIT binary patch literal 1226 zcmZ?rJ;lNR26jMF1Bg9=I1z{$fe-|Gpz>f267m24e})54K4Sv|!zvg6vO{42D6a(* j2eM(pp`+rEpcoB@(Qp{e7myNy$Z&uaC#xD5P|6Hfh_h@!3SdhpE;1aBR63)__4L?aoYMUtjBO%d|u-c9~ zef@PEyH1Yp-w%gmUpT&Cf5ZNX{pN6oa~%@K_RmYt#Tnzl#5s^0JH84%CSNeRTs|vXM{Hg0JP-Dsr&sLXkbGYr zs`ciPm>a8dPVj|aTa82I6oNI*p>no@6)qNHAz0y}Tp?KD5*B;V(n>Bpws>&Kg{&t_ zwc2<0x4GyaG&hkh{Zl7B*iE1-9J-I939YTdt%3RMpR0z2=x_PHD~VrhIZd12Bet-n zWiGWufADZ@)We`WAZOg zX>Be~k!_A0-#jI=^)xLB2rex#2reyI2u`hZK98@JE@zIdOW$-37ca>xcD>53e}4es C%|ucF literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Eight.bmp b/reactos/lib/cards/res/Hearts_Eight.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2d2a67d9437e2ea7edbbc3965862b37a506c7060 GIT binary patch literal 3998 zcmcJSL2}zL3`N~eyKaw=jK(uvN27fvyDYM(H9SBrk+o0Kv-oD|2PlyEAZ2qAb7Cu> zegZ)7TasVi{{1@W_`v%gyk7Bo$LrhS2i|%7cJh2aA1;>*WMbOx_l)!rFAIpI?uF@6Uv>iG#jSlI;Q#QBulel zI;;cCj1(nc(SZY_!@?Ck%7yyM`CGuE!@fy97*t=?&IgLki`AD%I}UYV_`W#pI89vA zrbOCtNdnez$@Fxbcz+SVh0}o0ST3f0JOuFJBp~!ERWf&?a0n&3!=>7k+#S)foRBwv z7~jEleQ&-qKJ1%Kqk8sXLR)wpib_4G-7RUwJoQC6Fgi+n{pbFiZa>v0iQByFJFBw8 zMIY|0gMD`;p83v@y?7GPbvfgm`ZnKDxZZj<-wkk$54-*2K%3(FmcUd^T=)BtPbIGV zeQUYcH?MuXo$G-HbetN>Z3Jn@MW2v%T>e_rR*%9L(3M! z`bXuYB;BY8SFN133~{3GoF*>%&gm_$JfbxB4U|)Cqa5z+(wOKwuQR7>R0EU%`GKSa zbX@cuX~&^C7_}9oE2n8)<*YL&`?luuuU`L9%5j8~N90jX>H%9C!#dZekKECBq%$Y= zVcXpGPF&%2=8#XfWdCi8CqG%P4p-k7a=MOzc=Ubi^0~h5M>Hwi=D-!r0 literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Five.bmp b/reactos/lib/cards/res/Hearts_Five.bmp new file mode 100644 index 0000000000000000000000000000000000000000..5ed15b2a0bf82010b1d457b8763779b5644a7658 GIT binary patch literal 3998 zcmeH~K~BRk5Jd}uH5>sHRbpMMd(<5Z79{ckxCHB-gtPQ!@Mm1x^QTT@BsQR0ZJHmy zjAthG*x9{)-mSEK;P`~^3%>98Uaf9$yi&%`nmbehYwuc)!xfrJ|d%fJ)IWGKL+c-wZVN-LIb&yLYFGJX1h;;$8b{v>6 zg-{F@9XMVv+OoZ(dpQ?Jx&LUe=uv#Bafm-?d5Py z`q|*}I=K)Bbr;dFSNiP9g|peH=YJ$GvgDj?$2epOJKGYcOJWCyzxwtpmg<2_37rof zu3E>%w9)zM>z>iX`MPJca%qb)vwul`r+9VCllMO*AX^6$r(M48kv5#Kd!!8~LEAi% zuAB~I>I&<`$#a|1{iW`)P8?iW^Y!EY3-{W*$QHSm6Mw*#y2m=lfmab<_edMg*FDlT rj`FygCy6s|HL1LQl%&m2KjwIY-LRVd>zYT6`~4-c*ZaQO`~Le4UauKS literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Four.bmp b/reactos/lib/cards/res/Hearts_Four.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c0242d8db2f58224a43497840e32347805dab536 GIT binary patch literal 3998 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 literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Nine.bmp b/reactos/lib/cards/res/Hearts_Nine.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8d1ddb840f09ecc8a0f41a64c53ed06a0eb63cf1 GIT binary patch literal 3998 zcmdUyO-=(b4227VH5>sns>GTod(<5Z7BtEMxCHB-gtPQ!@NCD4otd@)i9d@D^U`nZ z#Ez#ko2R#{727M0clbQw^McRW>HOi{X z84R1ct9qgk0~{O=ad~na%?DN&>~)Kqg^M~ruMLNK!)#uRHXH}4VRLrcaG0-kmsL+| zWX5uEVBE1oXlzpqTMiD|>}WZx6V1|dTjvh0NH1_Xk{4qU=d_$It|81RxS@SN+HaXQ zj9ae>W=|8u2uIg^fz!UxkWL$a+BeEM-8jl8a$ig0b>qOWsXMQ~kE8j(-29quaed!l zmV6nu0Gr`{s*n1(v~$ZUWKvCc`#}3h`$RQ7nst=E!JvMxe9x6WYVjmKFz=5BVEui8 z##~$)kVe!6$q0@MT%T`d7dTfhbvWnx{UGF=OX81z4bPB)Ij)}3F% zR^7NH*VlS^{e2wG53y=uyl!#P7R%2ioB+esdX>yLZMd4arISx`^pkVcia&nlIR*;H zKZ(b%vQLq^coY+kQp)-5;ifq*%0SOrwr|*b-$%-szG2R2_9u@h=Dy36)3RQEB#*pYuVuXnA^Bg(Y=zQC&z pfBb4AMLlr*T@LH;PsFoXYF_H?XGX|?a0k9L!^Dlgua3U|egHI+?i~OC literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Queen.bmp b/reactos/lib/cards/res/Hearts_Queen.bmp new file mode 100644 index 0000000000000000000000000000000000000000..71746cb983aeaee4de34e51a76b5f627dc39b19f GIT binary patch literal 3998 zcmds)OKu!D5Qd9HxDH96_iPFRvi87xL%S>jut(qla*3>clAJ|1bH1NFa%QHf$J(?; z5BAqpe?3^;e){X*-)*da`2Gi1e z{5P1jf4H^+7e2m6RSpT2yGdpMmQKV$FIpTGWsTvIA1tKY@jUaR73jn+f3vC-b- zTJ_NyYt*y#yFCB2*M_|o%*kNucXj*8b?;;7p|!GeRO7n7a1W0UkL>w1N}QF2KQ6Z` zz`d`A1GNU6DTbDHVZuG1SX`;ef-M%a1ir(q9H`B2mL!mPrRLV}Y4~*(0@quTz(%<2 zUUMC{UuELLtrFOt**)EIBU8Pr8nX8$hZM|hW{5A#g*#*J&ToGP!(13a5;rH7`by1> zK2b8)edwgd@7%m@V4?fc&)tv2U|MSK?SUBqR{|;Ckw7@9nQ)jhUyN_+gdz2o+m@t_ zPN$f!#mbp7Pq@6+h5craS#JDRit;$twcjmeI1vqNzML^S^_|y%uEYf{3oz`V@W7E=f=HZ6@A+k< zXJW5cN`~hY#Boa-0uT0j3of`+5~HAuXebFc-23g@V$H3YP~e&i7@z6u%hsADI3019 zX)G&cVh=7@mg8nE)i?FIMb~%EGQ}l36MZexDJ`v}(5huLDuKuRIWot;RHCous)O@X z_z-VOnim*TlZtB==k^kjt_dR*&I%%^%fVi8aCAzvHI*{rNO7W%iV+FJw5+sVR*xo( zAMDX9%*P@w6-%@_L$9ZK>|5045c^pF)4I-T=F&0I*&&VYw8g$dTY%Q zHj}U(Iq5?gFpfJQo!};%0P0owAdqIEEIuFY(NdKewK$bU&;4e3-Hu#GU|FF_KI#s0WLjbDX_b{dfBJ0* ziRyTUuekjM>_#84?Hos({eH+A z&W-0j_J%;2yzx6Yg)~{ae_aUsEB8gv{Kv1wjsH5#1HJ6-@v3g`ubq3J(N%H0&3&}C N0{0~N{pG)L{Xg5lB{={9 literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Seven.bmp b/reactos/lib/cards/res/Hearts_Seven.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c068878f6146cdf0c567e1e73a57e36c1dbc158d GIT binary patch literal 3998 zcmeH~O-{ow5QPhZH5>sHMPePxd(<5Z7R2%axCHB-gtPQ!@Mios<2Z>I?FKPwQ$6SF z8+$r&n&bQT!-3-q#}~Zc@czX6=5U9jjz=L+r_nD@Z;IAe^xBsciE%g>FNf5-gb*2VcrbF&%!Kw~koHW(0j2Q$qEY>KQ0#ep%- zm~2=yEu{E?;YfBxJ9|xz=7Ui4E4s|jGlri$h0=l>_=Kzr4MZ(CPMp(vue9Ji85TRA z^e_&is2>{$yQF6`VR6zA2GWiUp&iXqbF;F8A?XI^OHo2`NYiqvyy0Yh1ZQ>Lng|*T zk$upHXcT4X@$(L>s>{0NKetkwzga(9t+r^j-sbfYzN)z9^|s`2#i$ETYU#JKAF!d| z)P91KN(-)czruCOmui@}*ZX1d<1}I=S{Kf-9k!epT3?T&`5;%WwALjrcEy$Z8%GnsPvkSP%)qRL>HMzPES2$E8S0_!NzJpf+r9bsuu-1{eCq z^67k7a-4Rtk|n46E*V~lqgzf4-FIm;=A~O$infArV9?mMNUA3uxmud;GT p^~=-R;piD-D}vwTX(3w?IF!V0QE6Z6<+i=(EamNeUhRGU{RMQ>266xZ literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Six.bmp b/reactos/lib/cards/res/Hearts_Six.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c45367ec60129f20a94128dc52d56ae01bdc8343 GIT binary patch literal 3998 zcmeH~K~4iP3`GlqH5>sns>Hfc_ozD-ESOOaz$IAsB%Gx;E8k9>*lB3IK}c1tPG^4d z>csBEli9t0Kdjik@cn}04aX;ro7Ek@tvxEa-|tt4!vQTve2)0w?6lpOyL|=o9EbMt z1nz!_#RzP~En)5Cf{TlBT6@NgaoKvfIRqCsHQbE2rcKR}=+KNig$;&44zh`EI51%e zp*SqM;lQwoyP~}u;?Vgkzt0Yfo@p-i|E2lB%>1gZTx1L>6*F3Kmov#5iXjwKRD3t$RYGXv$Wi7+`$#;4i{@uQgTRBIL)}J zv;79=x=)+`t#wm1(qiMNUFK?mGI=q*R$Muo4^fwym#u`C&sCdvyXzzU#Bkm9cFOhF z?lavzVUn&C(lO-#AwAyfA@Ulx@ozz`b>|UvzG4zdW4;|#PK81!QqzQp2bq0X({l! zXyK}PTr3}6x1;(e+^GJgEeaK=vMOn|TBmq<%Om?ALfCXY%=x2sibgv$T5(ERpNFF@vX`SYfGwG}I*rR)Zb$uN&eS{3yLx}f{_F-;LRM$t%CuCU qzLfdtw%&E(hRZ0|7v!VoM71SqK5JdxmH5>udio`mW_oLadU_mS&fJ?B>NjOVxHvIaw%fEWMN$)_ynk4hx z&%f*{yE}RQ_Uprm?I+&9;Pn-+A9%evy~BHKA4T47x6}Q8N6!oXUhs#{gYEe-_x1_Q z=lZaH{{-&+L#$R{kGSPhF9*15O6PQdE4k!w3+BNhKvW z9D2=xVHYP%?B;aZ)({G#8Mu9HE7`$UeLT)N7uqJu!pTRXyK|E zPP;nva$e41U%|laynanz(*@n?2LrR4^`kB}%g9}uo!5_ggR7Pl_L~KoXWgZv0Re z@nayVL(sy}aN``UIXx$vlHbyaI6Evv^UX#*`| zpX8qdM2GxIJ;{ky?&yBmxsTIY{KEdl#h`@?=K);M!iDn%F6hZIjO_fVCl}BE{{29? zjIgTpoJ&9JAR41)T$>NB*-2y_L=<&cwOFN(&dx z4aNm69M*}J&6+Lf$uX?VJZf?!V~wSa@6Y9!@4oL#M$Qg#sag%##`L1@alzSqaLp4F z_2iHTIX7?(S~#y)j~ujcV`7`1f0@JDHmBvCoZr>z=3SfrklVZxJB>T~d-dq=-`~Q7 B;NbuO literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Hearts_Three.bmp b/reactos/lib/cards/res/Hearts_Three.bmp new file mode 100644 index 0000000000000000000000000000000000000000..cef34609e93f5fd2d91564011aff4701d5524077 GIT binary patch literal 3998 zcmeH~OHRWu5QYnaH5>sHMPgkm`>Hz@EQmD+;1aBR63)__m49r<_QYey8x}>zH%0$y9Q=W#ywo^ncx6_JgNPMo z>V|R9;w6H@OdZ0-P>F*TX6h_^t8;Uvjv5^0N#U?6c4g|oY0pm{4FXc>aEVn`mJ-Te&9gGZf}3-?N_K*SF+x*urKX8 zv!W9*T5{H@L0qKT;H6VrGMy8a=ol^d6@B7(HF1f2RAOyMmoNd zyzr9Kln@6mVNLOzTM|1sO!cXW`MTti5cN>rn&_QKcV+$(a(ON%3Zl@8MGe~D}LKiEnWwbB3bco+Nff0_64 tY&i-XzLeVHxjhYSEX*sUKgFTm;q`%=)XVW?@Gp*Q2h8<;ul9cb{sI9FFw?r1j-9BAbS;3YWkNqCmM+4yazY0|i>Zxhn2wM(6^ zcH+8mdieZ(+KK$&{D$KL$2X3<-2=|GJQtV8<8gO7ouE16cg7F@PC0CI_wQg{X;Z#l zz&&naM8LMVA?#gT7eeo`7if$=4&!%>uj_r>fN6N_5gT;)B{t~bA{%sYdm3F_2qAjx zc{#}v$M~+rb-f+G0qNH9GgU#FB2kTbbYVYmY9<*Gmtb&U0{XH+v`tR*+?9myv-~bO z0%tw9hFf{x*bgL+kJj>3xj2oFXhhSD3zIo6${UiCG_f?BcHP&dv9iKwhRu-F@CMdg-Pc2xdrTw*gFGw)?5Qllp4T>rf5 zsdIhyuJ>%NS@6?5xa3SC7)oCyiIcsXc8J@iGAJh{G2K6^yC?}s(O<$={ ePCn5}b<_j}d*{rd-I4morH literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Joker.bmp b/reactos/lib/cards/res/Joker.bmp new file mode 100644 index 0000000000000000000000000000000000000000..1e2b495866b2163beede00d51029e16e8f10666e GIT binary patch literal 3998 zcmdUyL6W5^5JlmI^Djm%KnMms?C2FJ!Q>Bm5xt2&u9fs!YAv;q>U%RmLH)ir?TmO9 zCWo6OCTOLfzyC2}|Ka)#zkl)jg`YJ8uDy-T?fd(?`S|!SpP!%R>+7rOdEWf-9C>^P ztL!YmAZghpp*<0s$ zw+zU*Sr<@la^qCN5%=yb=hc|EolEr6Mmq(Xv(8T<$OlsNlnMbI^oRiqh@kTH3|TOd z@qVjn>jGSoO4UowODu-lIH&QaNJZ6K)kW4D=ascn@e(X?s~YrVLIJ9FbM9QD2PZ6n z+nn)2uP&c&xUg~C(15XO^R9Qnc~il(b8sE=7|o;TCGTn?@Eo~j_xU;*MmTVu&s;6} z$*Uyq3s;BE#zw_*@_gFp5QlO(cztl=mPSrkb67yKu)=XPZOZ~H4Nexj<4`idX38b$ zAjle(v#d zgO?d1a$2<=Se~*X8RJZ@o(^meMVqgRy{%89cJ*AY%f)V{u?;(LGv_UF zdGc;qbahIN6%$G!YIA!SxIO4)B#2ZAF6bKYSMA6lFgSvo9{vIKI<0=^X5>0NMBU=d76_pwj! z%*k6Q;Vf)d?|&#iC*-*K|bgzC!W zq}On5xtut0s9w9wXAarYkVu>EnVSW}=4dt>5~6pIW1wVLCfIGZjjOLVvL$dYSM*HY z_f}Fca?EZT_t9{fpuVwpY|CTUYdV{z>LH)Tch&q$IG)S5R`OWdGx2Ib&G)LW^^xbcY6Z^y~ElVw*zTQL@siGN=F zlg#X*eSZCVSTx?HeUj@%t~a@EmRo5>tK*u4=C~~Kw;YdllUBNNK}7WNp4uW42|@1IL8*Q802M49l~#E&y9S!Bl`q;j(k93&fx+ zvf4105KS>3oojKvj_eKJLcTT4m~Ld}#$&+)zVf+DUeo@fUh93qdokIqeuAO1FZQ29 zrib_0&uPLHXkM>jJL8++g5*p#GcjlsPTnP9dS^D@JB)UhtIg za&#^P8pBxP)<#$db1is%qC~D#NN$M>AYlVXAY&ufz<^CSTV$lh^=&62@8bkE^_{VM Sz1gY!&*yRJ@6}6x|Na1)HUND9 literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Ace.bmp b/reactos/lib/cards/res/Spades_Ace.bmp new file mode 100644 index 0000000000000000000000000000000000000000..be1f61afd571e939f319ecbde2c092339d0d3c7b GIT binary patch literal 3998 zcmcJSO^(|z422y-`x-?KpaHz-vgiq9Lz`Lj5WPg#IZ4lwo28FGl1W(u3+PlcNl5C; zBPq#ovj6<^W#aK0&)@KP$Kw|sw<+M+kHxr;$76avpVRbu;s0f3uFW6U$ow75TfQ7y z1Q#x`oPk|(8+1mvG{`OYF+D15Anz7#LtMHqL)?qHYJc<(9YU zew}xka+1Re;mdKYCla5@ee!wPu*?JNmvOm{?C*|N=K;OZ{T=1<65~jHIS*b(JK7lN z<6rle`oq8;*g>IS11Otf*a9~w)Nm}=$aVYZytm6y;wEjEi{MsQUAun!GJVasyl{riJNh4V;o&OPFIdOwR?H#@SDvZ|f!@AQ>pSEcPC5ZBiK21noz9m*JBDhvh4CW}4Nd(t;A9F|&8ac^JOJU9$ zI&RA=_4&f%sXXQQE6R~-JC&y#-`Wpuw?#;p`^7EjfXE8og{Ryp-Uj{)CtpF^RL+$edd~T;0f`hUp$B2>=6@=e-a$QjwKxb#OTZ(A>sHZ%Mt8Y!sV;- m%Kp0Rs3TXn=DeIq&AXjvd_*}P?0Cezb>dBEi{M6o|NaFP5!XKe literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Eight.bmp b/reactos/lib/cards/res/Spades_Eight.bmp new file mode 100644 index 0000000000000000000000000000000000000000..46dbf26a8ac66bda6ed8cacf7ffb4ab59852b462 GIT binary patch literal 3998 zcmbVPOS0S`48#=sI8`|SugZ%oQ#rxd#U_g!BA3W|PLi|C%_jQrkp#9$sIg6prUjDT zGd_O)`Q)hmhWl5ze!%q$uEhno>$VE`d_LXl^>Xh0hTmI^+;_jo-hACcpO!3w&PWc_|!$yek`gt{aI|M*B!pD+!ulKP+0AwS4 z_yj*0=fgQKX^eZl2$MEJ%-F^mrYpgM?S65(6jT_80{g;l1z=LR4Urq+SmVaqd43IH z!;dV^ew&?_(J-V##1H&A?}TM5saH54tN-_PH@1BXtRQ73fc#nhDOaJ zx1HmDYO5#d=KpyZJwM?$mAaE|hxzF05N7o21EbC_=?;0yBLl^=Isz-+@b9D3v-?!I z>Djnx+;}!$8vi>F{9vmUuQ3jVwxtTdghLgJZp6N*V})@j>ye}CHYJ4xFQLH3YoNQt zk_Q4pjsz=~ysl2p@@xLDB!QJ)$~&rSY*_Ouq3aBJVqImzkZ0=<$OE3LyK_B^qBoHo z>FK&V*PG>0`X~JAx;ytvWupsc92at23ndE<;@8z7Qb#iwT}V^tnqsOhG+obQCfuo~=89iH8xx9oo7Rn0T;3IA_?pQs%s>_!BVx3+#=FRToQi=vq@8h1fN8rtV|NaGXkl9fH literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Five.bmp b/reactos/lib/cards/res/Spades_Five.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3778d09b037eebb3ca7da2465e033ee6038207d1 GIT binary patch literal 3998 zcmeHKJ96AG45c*cqrwNEXSPV0@d>OQHZFV!U&8gCBxl*1Z5{xA0En_!q)En{l@di|@sZ7?q8_vGg1E5tZlP&bqBHbJ9?;6NI~TM zG-?SOe$CD$Zqq}J(eR3@l8c4)h%?VNu3(?m^!>jI@MR1N-F1%1G})@I>)`c zE{`f$=2iYXarb=-T>Fwm4FTKLP9Kz#Q z;yF)VvEw}7_Y~&1v|?$6`M#%co*!*3ecv-!c(g^KRXeMdYq9VW>f-yE#hHgKl+}Bj zc}Rki!KfX>VlpjKIT9;?%3x)RY`DlpI2$ZH-jZ>k8a7X)VBztWj2$$0;;>-h@fMjY zSffIq3KlH9i9Rv*eb3)tP?+cYp2Fe}b0L4bzQ;;3b>!3`J!_dp+a;Dv+UL(G%E)mJU5cFVQ(C=~;5K^pg}N(Y0!=1uVppzxYH- zbOJN$$M=)t_J#fh*E_CHT!ZuIZJR22yWQOVes}Kiz~@m}j&I+Nk?|GGb3ANI0Ot>} z7=aye^A&!2xUrLSaMC{?*7{fi4&bInwYNl&yJnA9JZ8;7cK3d05BDu+gs$xAG{%_6zTx|ldj71-*+ zEp&??jyOm1vYwN3&!#djWYH6{N{fU;oN=^qMK2ViaB&)zVX2;oYW!R;HAjzJLTb;N z&a?Tx>^@)G=V1M*A2arHaSCCxKjWteo0l@bxm$6Jj{V81Dt{X{R-T;AhpIC#nh86e zd9nFWb>>AgVaGEsHXo|~M_%}qqg&n`(>drB_Gc50Ux~+@ykh&g-S@dH=eSY=H0pzj zi(FD@eWCGv(yU*2UCB$Sf5f5Hi9-ox=eIg>a6yMbLoFc9YBG5-&}|l&GP*Ja zHe6*9dZQCJ!zl;KVbexbCywhha!}mmdY1zvE>fjN8RW^-)w<^JSnSuU(#*}&!^v)a zFU}1YeTt|<(af!=1J%?RnTz4l$E`yjhuk;f>9oW}>U5$pCN74CU8j{(-5QB|ZW+t` K62SHT|NQ}n$s#-e literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Jack.bmp b/reactos/lib/cards/res/Spades_Jack.bmp new file mode 100644 index 0000000000000000000000000000000000000000..508be3d5575a9236aadb7cdb91d372db3424f157 GIT binary patch literal 3998 zcmds)L6Ykx6h$8t^MJ|=K&l>On92%}i%AAqL^hFeuOw^fopsIy$!!_A-P7c?t#3(3 zm-`+d_}4%G`NdlN&GA>hfAIZ_ud~4M81e4({r%lOK0eGoKlyy#-Ff}<_t%L34Q8${ zW6f~kB~~lgE6xm^A8^tAj4Sf>1HJzkSCrC8)Do`YF5g1-E!>o*Da~`5Lyfh-k+B3q zyM5zInj1I8x-OyA)$DS{RW~iuGB3zYG4r@O-YE2K*G<;~c_PX>u=&@GkGcGHQv?$+}SnIc#^MgOU ztG421x_`^J4s~hVL}x5;xBj@2#)ChBXb}l6)MBkyxO&W^ac%UaR3opxs$NlyTv}+C zfu&-G_416=fP#pVM}+6#O1M0eHq)40n3^?QG!aP?yl#rbmi}-^MIa z$V_OzinnAA4L37;`QWWs9QFJH*!1!|=NV}$`K(<7l-}f-z+P6pKWW#NC3n4f@@e)M zvYf|uvmvM)DF%P$tx%y8&Pz~a3vZm{oLiE|d@V~5`}*@4b7y)UgA&|=^z($^pck`w zzg_00$DxZhaw%hQ*?S{#B0(GUk`(xUwc7+oE@t#7nqJ6cq7wuM&dFfTJ}>^t0gk$) zk@HaoGjhIiFrDNyju&eN5!nsmm5hgWtqa~Kyx2T)xeJCa!2Deh%qLuKf_t-!3Jji% z18NuPJEL#;qn}CMPB_K}?f8AXpxY`q% zhW7TALtW*JD20ODzpThumv!&R0hUdThdXx0)r8_#geElV)zn;&2ygsl)=Er_oOU2A zjcaQAjpaF~+Vff2yRg!naaZ#+;P*wSElFpbmatMX8pW}|vA!)l)8gPyOX9|HQ|qeI zXshQvw^9tZbM8%?T5YTG$jP7fT$hdOtNT57MbA?f?8(!{_1(ff$I@slc*-|?%dPAb zy1(^{%e3yNxuU}dBJjl*H_8TsmKUBj?ceLuY-PXY$jqQ4rW9Npt2;2JuQ;MKV zI*fX~-?sT7q{V?-*=hBB9UD`2rzvdMQ7@`4tv|FO)^2xuojtUxJy*-uv1=AL-2@Nq ydU4JFc<2UnU0!VW^W@+E8K(~UHnx1r_R@OF?sa(zY&XQULHRwnX1JgJ|My?7D`sT? literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_King.bmp b/reactos/lib/cards/res/Spades_King.bmp new file mode 100644 index 0000000000000000000000000000000000000000..d0992ad8a5386fb3e0d6228cb524e44bf884487d GIT binary patch literal 3998 zcma)<%W>m45QZBl+!sJ8008B~9=9d}K!wX3CWuL5&yHkcac17Ho79vf!WO$si6TG# z{lbI3{`&7PG5eR#zd3$#{N`{H_H=P=+?AYwjeM21UNe%W7x1DI;G18nH);&gZ`>dNgCh77H-)I_^{PR=5QxIIdEGM3PT@xp-M{F2$Z5 zq4`#!GR|9Ea3Zn$=v^*SQ$`rUELN6>y6E(A#i!g_jg{z1am{AeL;Z+KE2D{E#T6;6 z@e8gsOQeJurWBu>rG4<*5FimLU}4Y?O+1$)7d#vVo*@Lv(o}C1U#DI|8tT`|g5DxN zU0CoHa{xrv^wQC{KFYEZ!ag)-b ztCBOaTIgfn7;A*3nfR+@JyWP3>c_JM5uZ(u;82_6*f(t~Ayv=9Bi_*-FJqyX3&kKy zk0`C?DOSdG)N3?@kf1T@%z@)$d^IvJS}orC5y^xBxzHm%^vKrw%Yc?7(n(oOeFQt} z#HXP-`WtLq_1G9fcJrRw;!d|Ii<)UgG+rlx{laexW2r0YKO zTUg&3$*Y8NZxVE~d(zXDT{+t!ZChpg zVsC%q1_g7<*_()Qvs}LBwjF%qcz-zPUD5OC(OBJrERPjuuM}svAx`rx=)IX<8h$w4 z1|RFU*M)o>_wdW^E9nrQtxB42v_042(|4$&9#@px>at}s$HMQMuVA3Q-@sQ>@~ literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Nine.bmp b/reactos/lib/cards/res/Spades_Nine.bmp new file mode 100644 index 0000000000000000000000000000000000000000..72a19bc86ccb5bd92fe475d5ad6444527b2a43c8 GIT binary patch literal 3998 zcmb`KO^(|z426|I`+Cs>XaFy|EP8@C&}J4rL@&|xoTO*T&C*9wKaa9wdw>xpV?F6J zDUo9A+<*W37PS4v{~!3gXJAL%5-z7Wxcq*`-ZbCh87}0n=F;eQjF4(XWZ1`o0B|!MrZFxPZscZqk|B=s zJ%lS`MJKtLIRrG!1Qxx7;5gjw3^qM^PHty|PRmp@U(#&?Lr(W8bwiH5?i`jYt%b1b zTQP2a`?xKm>j{Ao6UM>M_3Hha9?$7?SuP7@q-vDwklz~u#Z9&B=SqG7Z01+idGQ?E zYW=fZo)S(%-)}Rp>iD>9tDw;3pHi03h`;@vN$6j}?*Mph&`tuz8)H>35lP-&m z=BU<9&Q>Q~du}~Xb=B90n?`?>Z^x;BzfW7z);T@P`S`xJ=kvA0C0R3_2SsHl)|>3A zj@^O9_y(5~24{b-=SsXJV~V|sUyXmAuiE?V`Lz1%+Hrh7B4$|gKE^zF-S_LqbN0G( z8n(Jq^DC1jkeyrQOQu>9sGFou0d`uZWOr!lnDXT`ajSfZ!C6gkT>SS_anQ`Oz3u0W z8Fbv)@6#O1YU-tHXRl6gTtCO@BWJ@(A1e0b5w_cm(?{YlCr7BgXKdqYuX436DoR>8 z$+%>Q>PAu0${}HRrEqlv&S~T16$M7?_pTcA+PI9k_Mmv)jzC{)~f5Jnp)><3`+04pRy!TtO1==aCN|UtV71_4QTc?TvqLhneTM-<~7!FPK|@ zI-0_zr&#Y`&$uSxOB^QeU(u6p={MxeQ#l#^Azu5jDpsrLnv#$WhJD2KSfj3DCJ}74 zuID@tJ(q~JqGu_wTs>KTSU2aIPZ@SIfXU7c`|fz+vpdpzmeskanNPyiihs>GagF^j z?1r4+?cPmi93E2|QDZ<@a$9%K(UYEUB%jlgTWr$O&SjjLa0ucRFSw=VevP-q=mE!2 zP#Ro}LU0&4>Fs&xQr4YYTyF!351bMPzLea%u9k}XM-s@wSr3R2_M}rLBhM=7n?h54otS5=C1Ydj9hhSNLK> zNvIgrs50k@0IDw@GF)(OcZ`Ex%QdWcmzmXCYZNFiFdqjlxgJgxWZc6lhL2Y+cgJEX zfP$Wi)I8x9N}WmVC8LC3l3P}}*i~k$gqRvGB8W>LaDpj`Va2ll#NwRus6wIou$)*D ziG@YE+U;Z*Jy>Ek?AC&X8AnNF=CPb(QQVv9EyCs&6z&pQfs40wrsoT0B~l$Kt84E8x%l9lSV!V|!(<8+-AlGEsBxRz=Hq)a(s_r|9zzc&WIE$BthV8?!xt_8XF7rO- zdZRK;POq7N_(Eb%FAx8+9@ONSVxLr*akS)j-~1-B#50cg4$=Bns+8>*{(TyECc5k8 zUBc7OcAD#zg|(Hq<*<Q@UK*X zD^1dnqaNdoGq2%=wp)l*sRMSxEMCkqZ)1OuJJ0cyYm0BPgdlYv5T$p`^l)$N+koYv zr-VGhILCo|UNi_69wOX|eZWz`>a%4vl}Zzu#A`|zqfsTc`WjhB8uT?UrV;l>k zkkF;M?fdEDsMr07;(9x0G*dY5!;g9PybuRm*aGe;_cIRl!4-0sgSFZ6iH%nafdWGLlgRb#QPxxVi6aKSI#V~ix%ZS&xMoaD~SGUXI zlDc2PN9iwcpCV(@^={9xrf^^V`}cpHuxC#I literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Seven.bmp b/reactos/lib/cards/res/Spades_Seven.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3afe69e63f580baf2aec6e8fa4da39750c154c56 GIT binary patch literal 3998 zcmeH~O_JOo425kM`*<-2V5+>xGL;h;7n@n+5V=IweUhA|Z`OH|_>nLklVz$xO?!Cg zLjnP9`uOqt%f#guo?r3#z~?7E^W^ZfWmWR=cudddbDCZ+{JoUrzWV(hS-ydJkGCaw zaPAh15!elPFmcb3D>vXTuJIV+_BV`wAa0;}4sdZkanw^6$703P_zToim893L;nsP8}tar3(&O>Yp%(~%dfwaS-cMO|sPJDQ(D~CptDRERS0$q)+CJv(l zTV1&z{Ywg~-jj2QTiel$QuS)`hd9e(GazAKb61kewO)|d34Xm ziOc6JC&cLL@ACX|zsl9~FAlB#dydXC3eJKQtI6cVK-D79WVAAQHf+)fPoovbfl65Z zy061f96PA)#9`K&qYRd)sA#RZIJ&+U?>CBJ{6$Ais<=|OTxmX4x?DR>^y+f$KJ0U5 z-{k?E{ZZDICX>CmcHdq58|4s}idn&4T)XeCH2ib7diROYM}E+Q}OezH1oxI)?XRwoXVpvj<=6|CGI=&^ z(g{zag$s1C;y@*AqlG*80!9w1yWaPoaFnqURRR<({vut?&!r@KVhP`HxOJ}+F~rdx@7*A4x8 K@Zd&&|Na3LVDM`I literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Six.bmp b/reactos/lib/cards/res/Spades_Six.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7f9c489d471bdac6ee6999f74188ac6cf67cc11b GIT binary patch literal 3998 zcmeH~O;W@l5QRyKy(~OHrYZ}UmM2K2*tqZzUc&X9#IwxJ#@F5abTd(KYe^a8!ACcA zfH3E`&j-ip1Njr4S3K`{Cg+jc6qLMNF7A50I(NI_@1|P%#g{%ZKZ7~NZrT@czKg{O ztjBHcagdvaxERAa;y1?aafI7l@FN^vQ_HmxV(sG6a62ZZlV}&Wh6@xal|H=~mtj;L%=&|$dA5EuPi2GUu#mKC_N9)~&KeENdF)WVvj| z{2%3FSe9md#!eMBF15ZXooThz_tCUA@}Fx0lH{L^%i(&K37h#I?vFbz@2?y{qpQ7d z_b>OWT;2a-(CXiFw4ag6$!j$=d2vL=B2Z>0&~VX9=aN@#xdPl3{<*u5aK+z>3x9HsCz@*0eCZSR zV-k)(iG5B!vEy9t{G**pJF9#C@s+}ycj#rb%!95dw0mc@gRQP{vFBZkRwoWuC|lp^ z#9=rz8KiPjSWQhH6cQDSXtiousH`riMpKi=*l_J*N5yTUg+o^?1mwz`)xrh3nsWqc zpgB cB;l}DhB$mV#<&h8i|N#*;=W*jqrZQ@09UU4&j0`b literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Ten.bmp b/reactos/lib/cards/res/Spades_Ten.bmp new file mode 100644 index 0000000000000000000000000000000000000000..06d3ff3013806e87f31cbcb529e951d16a4e6461 GIT binary patch literal 3998 zcmd^CL5|xn473g1>%%_43;57u(HF#lEt-XHz@nMkh9p4}E`GU_ke8wT+JC51G+wC^o@AqMNJn;8$p7ZJFbISAyocDY> zwgtR&O3N9vGu}Mr=>^_(7}nth-X&eqzrx#Bi1;ACZH$!^e88KBw?Gu!^H8bD^Az_y z_HcDX#a*3Y2muYFZ=udy?gIu)S5hrbD}X8B<`Nkv9C71qy1tgM;Y$gwy3MX>G(4lK zEgp2HspxWL#oGXl#>?}#jhl2t`)3&2_099p@s}MSAnN>wtnSoeL+aiVx3h2JYQc5MEv_aR%?p74!3x2AL(_qzLbkfYH$1K0K0g#4@R@T z5C>i*^ppRZ=k|kC#^F#Gd#+je9Cp0WPf!DHyjSm+cwhdJ`;cuc*XGji*Tt;BEO zmAdlI7RtWPRHDcBjrk2*JTwePiq@}q-jL9uiyn+}7feMl!AEt&wa%!^z7G*=yo@7M zwC{1@sSZKCp?Pr)bINQmIIUohoonIT9dH7s3kQ9kzeK3Y9_^z`T9_9DtjwSckKtlG z9B8#-#^En3XxQ`odqw=#KY+k<=MdpJ9C)&iOo_j#g2=1pZt|CTQs*uyXOR4^(l=-A Wr^4&aorS#j&e|Ea1-w`P|NRNPx3bp& literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Three.bmp b/reactos/lib/cards/res/Spades_Three.bmp new file mode 100644 index 0000000000000000000000000000000000000000..f2f8328f10da2eb3000492e9cfd34b0e8298fb66 GIT binary patch literal 3998 zcmeH~OK!s;5QeeEzFy=2M9QMeswXfJn=X2YUZU%qq-V*^(tiNs88g^)RjKMIw(S<1w2Z?~Jd-|xme9{4@jljG*=F*3e@Ifp~>4xBy2 zLI8HeMWTa48ElWe`Q*E}Fd+U8zhORgao)h7ZckJSc{Dgr5fw2PG*x?(K}1Dh?V@s5 zW5zC;bi8q^alzH*RE{c0zPKoUH|tfRRZf22BB*k~a+fKRJ!ak~+Uv^al$sLvg~pTgexTl;dwzzD$A&>Qk5IdQD1%i$K8|zE^>3yvHxu3|sgqxkFXPu{;=;6Q^j7A) p)gKpa;)X+miNjgsQOuM^;cQWn9? literal 0 HcmV?d00001 diff --git a/reactos/lib/cards/res/Spades_Two.bmp b/reactos/lib/cards/res/Spades_Two.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a271ccf5ff82eaa5c24d5f071dc4673ee049c57e GIT binary patch literal 3998 zcmeH~OK!s;5QeeEzASP8NAjY}swXfOn=E>WUZU%qq-V*^(s_V0U&N$tq4ovmS2#{^e8Mpp3+KE!aeF?W&E;}2=6Z$CRrK^P-}}h;2Fx*Zo1cKQ zT`UB^dYm_dii0p5G#5k72|UU9p~X^X!HUKD*Of%RB$%9S;Gxs(!~!mrtk}h zilZt~=>0jj{5l_&#uQKOI;G5SXuD1w6!6wo2+3HDGxUrb7Cdl6m7Abv-oPe@j-;TQ z>UDr}Qm|F0ghA?4TTvX1HxqV|+srXq_Z*HJ8ooTDp~;H-KylD;7`;*9H@LwMUS!Qdy@JCC78vWH zC)v}?FKsDq68V0E?Bo~L$b1>Kw`bxNbF{SY`lKOpxP`jgB6pX;&c|?|YVW&dzgo`C zUZn>cC>2*pR59Eb7g?tT!MBm?3P!G*;KVJe-$8$=s^dyV)+_2Xb&7B1$~qN5yiDWU T_v9Ajj=8CJ=O^H_|9^h~0H0+H3!QIt-YmCtrP$2(4{$jz3;iwU^SIHK9_i#DA9VlZ+qg3&`43M2 ze%zfXe`*(xZ|3eVVy*FX2bUXl^dz$b$Zd^;%gdFh97jaau#x+4K~hV2C7ci;pb4! z4K-g;q3OIYRp@lU`8dz*bihHPVI8i%kik*FK?#)s`Hul@1i<^$uNVUs2z%MPc%ZE(jCXb#phk5+gUZfo?A)BR6#T?lK&>sf({@ z;zXB(=u=%1B4@fN1kUNA5IC<3LeGIN2t9{76gn>GQ0Ta*1EFzA2SVer&I^?*bY7@j zrE@~zN}Ur5SL;kD9Q(q*fWDU{E*!rRy2<^+j4QX5I