milsko/src/color.c
Nishi 2e2833f57b
All checks were successful
pyrite-dev/milsko/pipeline/head This commit looks good
color
2026-05-21 10:56:12 +09:00

815 lines
30 KiB
C

#include <Mw/Milsko.h>
#include "../external/stb_ds.h"
struct color {
char* key;
MwU32 value;
};
static struct color* colors = NULL;
MwLLColor MwParseColorName(MwWidget handle, const char* color) {
MwRGB rgb;
MwParseColorNameNoAllocate(color, &rgb);
return MwLLAllocColor(handle->lowlevel, rgb.red, rgb.green, rgb.blue);
}
void MwParseColorNameNoAllocate(const char* color, MwRGB* rgb) {
MwU32 v = shget(colors, color);
rgb->red = (v >> 16) & 0xff;
rgb->green = (v >> 8) & 0xff;
rgb->blue = (v >> 0) & 0xff;
}
static void add_color(const char* name, int red, int green, int blue) {
MwU32 v = (red << 16) | (green << 8) | (blue << 0);
shput(colors, name, v);
}
void MwColorTableInit(void) {
sh_new_strdup(colors);
shdefault(colors, 0);
add_color("snow", 255, 250, 250);
add_color("ghost white", 248, 248, 255);
add_color("GhostWhite", 248, 248, 255);
add_color("white smoke", 245, 245, 245);
add_color("WhiteSmoke", 245, 245, 245);
add_color("gainsboro", 220, 220, 220);
add_color("floral white", 255, 250, 240);
add_color("FloralWhite", 255, 250, 240);
add_color("old lace", 253, 245, 230);
add_color("OldLace", 253, 245, 230);
add_color("linen", 250, 240, 230);
add_color("antique white", 250, 235, 215);
add_color("AntiqueWhite", 250, 235, 215);
add_color("papaya whip", 255, 239, 213);
add_color("PapayaWhip", 255, 239, 213);
add_color("blanched almond", 255, 235, 205);
add_color("BlanchedAlmond", 255, 235, 205);
add_color("bisque", 255, 228, 196);
add_color("peach puff", 255, 218, 185);
add_color("PeachPuff", 255, 218, 185);
add_color("navajo white", 255, 222, 173);
add_color("NavajoWhite", 255, 222, 173);
add_color("moccasin", 255, 228, 181);
add_color("cornsilk", 255, 248, 220);
add_color("ivory", 255, 255, 240);
add_color("lemon chiffon", 255, 250, 205);
add_color("LemonChiffon", 255, 250, 205);
add_color("seashell", 255, 245, 238);
add_color("honeydew", 240, 255, 240);
add_color("mint cream", 245, 255, 250);
add_color("MintCream", 245, 255, 250);
add_color("azure", 240, 255, 255);
add_color("alice blue", 240, 248, 255);
add_color("AliceBlue", 240, 248, 255);
add_color("lavender", 230, 230, 250);
add_color("lavender blush", 255, 240, 245);
add_color("LavenderBlush", 255, 240, 245);
add_color("misty rose", 255, 228, 225);
add_color("MistyRose", 255, 228, 225);
add_color("white", 255, 255, 255);
add_color("black", 0, 0, 0);
add_color("dark slate gray", 47, 79, 79);
add_color("DarkSlateGray", 47, 79, 79);
add_color("dark slate grey", 47, 79, 79);
add_color("DarkSlateGrey", 47, 79, 79);
add_color("dim gray", 105, 105, 105);
add_color("DimGray", 105, 105, 105);
add_color("dim grey", 105, 105, 105);
add_color("DimGrey", 105, 105, 105);
add_color("slate gray", 112, 128, 144);
add_color("SlateGray", 112, 128, 144);
add_color("slate grey", 112, 128, 144);
add_color("SlateGrey", 112, 128, 144);
add_color("light slate gray", 119, 136, 153);
add_color("LightSlateGray", 119, 136, 153);
add_color("light slate grey", 119, 136, 153);
add_color("LightSlateGrey", 119, 136, 153);
add_color("gray", 190, 190, 190);
add_color("grey", 190, 190, 190);
add_color("x11 gray", 190, 190, 190);
add_color("X11Gray", 190, 190, 190);
add_color("x11 grey", 190, 190, 190);
add_color("X11Grey", 190, 190, 190);
add_color("web gray", 128, 128, 128);
add_color("WebGray", 128, 128, 128);
add_color("web grey", 128, 128, 128);
add_color("WebGrey", 128, 128, 128);
add_color("light grey", 211, 211, 211);
add_color("LightGrey", 211, 211, 211);
add_color("light gray", 211, 211, 211);
add_color("LightGray", 211, 211, 211);
add_color("midnight blue", 25, 25, 112);
add_color("MidnightBlue", 25, 25, 112);
add_color("navy", 0, 0, 128);
add_color("navy blue", 0, 0, 128);
add_color("NavyBlue", 0, 0, 128);
add_color("cornflower blue", 100, 149, 237);
add_color("CornflowerBlue", 100, 149, 237);
add_color("dark slate blue", 72, 61, 139);
add_color("DarkSlateBlue", 72, 61, 139);
add_color("slate blue", 106, 90, 205);
add_color("SlateBlue", 106, 90, 205);
add_color("medium slate blue", 123, 104, 238);
add_color("MediumSlateBlue", 123, 104, 238);
add_color("light slate blue", 132, 112, 255);
add_color("LightSlateBlue", 132, 112, 255);
add_color("medium blue", 0, 0, 205);
add_color("MediumBlue", 0, 0, 205);
add_color("royal blue", 65, 105, 225);
add_color("RoyalBlue", 65, 105, 225);
add_color("blue", 0, 0, 255);
add_color("dodger blue", 30, 144, 255);
add_color("DodgerBlue", 30, 144, 255);
add_color("deep sky blue", 0, 191, 255);
add_color("DeepSkyBlue", 0, 191, 255);
add_color("sky blue", 135, 206, 235);
add_color("SkyBlue", 135, 206, 235);
add_color("light sky blue", 135, 206, 250);
add_color("LightSkyBlue", 135, 206, 250);
add_color("steel blue", 70, 130, 180);
add_color("SteelBlue", 70, 130, 180);
add_color("light steel blue", 176, 196, 222);
add_color("LightSteelBlue", 176, 196, 222);
add_color("light blue", 173, 216, 230);
add_color("LightBlue", 173, 216, 230);
add_color("powder blue", 176, 224, 230);
add_color("PowderBlue", 176, 224, 230);
add_color("pale turquoise", 175, 238, 238);
add_color("PaleTurquoise", 175, 238, 238);
add_color("dark turquoise", 0, 206, 209);
add_color("DarkTurquoise", 0, 206, 209);
add_color("medium turquoise", 72, 209, 204);
add_color("MediumTurquoise", 72, 209, 204);
add_color("turquoise", 64, 224, 208);
add_color("cyan", 0, 255, 255);
add_color("aqua", 0, 255, 255);
add_color("light cyan", 224, 255, 255);
add_color("LightCyan", 224, 255, 255);
add_color("cadet blue", 95, 158, 160);
add_color("CadetBlue", 95, 158, 160);
add_color("medium aquamarine", 102, 205, 170);
add_color("MediumAquamarine", 102, 205, 170);
add_color("aquamarine", 127, 255, 212);
add_color("dark green", 0, 100, 0);
add_color("DarkGreen", 0, 100, 0);
add_color("dark olive green", 85, 107, 47);
add_color("DarkOliveGreen", 85, 107, 47);
add_color("dark sea green", 143, 188, 143);
add_color("DarkSeaGreen", 143, 188, 143);
add_color("sea green", 46, 139, 87);
add_color("SeaGreen", 46, 139, 87);
add_color("medium sea green", 60, 179, 113);
add_color("MediumSeaGreen", 60, 179, 113);
add_color("light sea green", 32, 178, 170);
add_color("LightSeaGreen", 32, 178, 170);
add_color("pale green", 152, 251, 152);
add_color("PaleGreen", 152, 251, 152);
add_color("spring green", 0, 255, 127);
add_color("SpringGreen", 0, 255, 127);
add_color("lawn green", 124, 252, 0);
add_color("LawnGreen", 124, 252, 0);
add_color("green", 0, 255, 0);
add_color("lime", 0, 255, 0);
add_color("x11 green", 0, 255, 0);
add_color("X11Green", 0, 255, 0);
add_color("web green", 0, 128, 0);
add_color("WebGreen", 0, 128, 0);
add_color("chartreuse", 127, 255, 0);
add_color("medium spring green", 0, 250, 154);
add_color("MediumSpringGreen", 0, 250, 154);
add_color("green yellow", 173, 255, 47);
add_color("GreenYellow", 173, 255, 47);
add_color("lime green", 50, 205, 50);
add_color("LimeGreen", 50, 205, 50);
add_color("yellow green", 154, 205, 50);
add_color("YellowGreen", 154, 205, 50);
add_color("forest green", 34, 139, 34);
add_color("ForestGreen", 34, 139, 34);
add_color("olive drab", 107, 142, 35);
add_color("OliveDrab", 107, 142, 35);
add_color("dark khaki", 189, 183, 107);
add_color("DarkKhaki", 189, 183, 107);
add_color("khaki", 240, 230, 140);
add_color("pale goldenrod", 238, 232, 170);
add_color("PaleGoldenrod", 238, 232, 170);
add_color("light goldenrod yellow", 250, 250, 210);
add_color("LightGoldenrodYellow", 250, 250, 210);
add_color("light yellow", 255, 255, 224);
add_color("LightYellow", 255, 255, 224);
add_color("yellow", 255, 255, 0);
add_color("gold", 255, 215, 0);
add_color("light goldenrod", 238, 221, 130);
add_color("LightGoldenrod", 238, 221, 130);
add_color("goldenrod", 218, 165, 32);
add_color("dark goldenrod", 184, 134, 11);
add_color("DarkGoldenrod", 184, 134, 11);
add_color("rosy brown", 188, 143, 143);
add_color("RosyBrown", 188, 143, 143);
add_color("indian red", 205, 92, 92);
add_color("IndianRed", 205, 92, 92);
add_color("saddle brown", 139, 69, 19);
add_color("SaddleBrown", 139, 69, 19);
add_color("sienna", 160, 82, 45);
add_color("peru", 205, 133, 63);
add_color("burlywood", 222, 184, 135);
add_color("beige", 245, 245, 220);
add_color("wheat", 245, 222, 179);
add_color("sandy brown", 244, 164, 96);
add_color("SandyBrown", 244, 164, 96);
add_color("tan", 210, 180, 140);
add_color("chocolate", 210, 105, 30);
add_color("firebrick", 178, 34, 34);
add_color("brown", 165, 42, 42);
add_color("dark salmon", 233, 150, 122);
add_color("DarkSalmon", 233, 150, 122);
add_color("salmon", 250, 128, 114);
add_color("light salmon", 255, 160, 122);
add_color("LightSalmon", 255, 160, 122);
add_color("orange", 255, 165, 0);
add_color("dark orange", 255, 140, 0);
add_color("DarkOrange", 255, 140, 0);
add_color("coral", 255, 127, 80);
add_color("light coral", 240, 128, 128);
add_color("LightCoral", 240, 128, 128);
add_color("tomato", 255, 99, 71);
add_color("orange red", 255, 69, 0);
add_color("OrangeRed", 255, 69, 0);
add_color("red", 255, 0, 0);
add_color("hot pink", 255, 105, 180);
add_color("HotPink", 255, 105, 180);
add_color("deep pink", 255, 20, 147);
add_color("DeepPink", 255, 20, 147);
add_color("pink", 255, 192, 203);
add_color("light pink", 255, 182, 193);
add_color("LightPink", 255, 182, 193);
add_color("pale violet red", 219, 112, 147);
add_color("PaleVioletRed", 219, 112, 147);
add_color("maroon", 176, 48, 96);
add_color("x11 maroon", 176, 48, 96);
add_color("X11Maroon", 176, 48, 96);
add_color("web maroon", 128, 0, 0);
add_color("WebMaroon", 128, 0, 0);
add_color("medium violet red", 199, 21, 133);
add_color("MediumVioletRed", 199, 21, 133);
add_color("violet red", 208, 32, 144);
add_color("VioletRed", 208, 32, 144);
add_color("magenta", 255, 0, 255);
add_color("fuchsia", 255, 0, 255);
add_color("violet", 238, 130, 238);
add_color("plum", 221, 160, 221);
add_color("orchid", 218, 112, 214);
add_color("medium orchid", 186, 85, 211);
add_color("MediumOrchid", 186, 85, 211);
add_color("dark orchid", 153, 50, 204);
add_color("DarkOrchid", 153, 50, 204);
add_color("dark violet", 148, 0, 211);
add_color("DarkViolet", 148, 0, 211);
add_color("blue violet", 138, 43, 226);
add_color("BlueViolet", 138, 43, 226);
add_color("purple", 160, 32, 240);
add_color("x11 purple", 160, 32, 240);
add_color("X11Purple", 160, 32, 240);
add_color("web purple", 128, 0, 128);
add_color("WebPurple", 128, 0, 128);
add_color("medium purple", 147, 112, 219);
add_color("MediumPurple", 147, 112, 219);
add_color("thistle", 216, 191, 216);
add_color("snow1", 255, 250, 250);
add_color("snow2", 238, 233, 233);
add_color("snow3", 205, 201, 201);
add_color("snow4", 139, 137, 137);
add_color("seashell1", 255, 245, 238);
add_color("seashell2", 238, 229, 222);
add_color("seashell3", 205, 197, 191);
add_color("seashell4", 139, 134, 130);
add_color("AntiqueWhite1", 255, 239, 219);
add_color("AntiqueWhite2", 238, 223, 204);
add_color("AntiqueWhite3", 205, 192, 176);
add_color("AntiqueWhite4", 139, 131, 120);
add_color("bisque1", 255, 228, 196);
add_color("bisque2", 238, 213, 183);
add_color("bisque3", 205, 183, 158);
add_color("bisque4", 139, 125, 107);
add_color("PeachPuff1", 255, 218, 185);
add_color("PeachPuff2", 238, 203, 173);
add_color("PeachPuff3", 205, 175, 149);
add_color("PeachPuff4", 139, 119, 101);
add_color("NavajoWhite1", 255, 222, 173);
add_color("NavajoWhite2", 238, 207, 161);
add_color("NavajoWhite3", 205, 179, 139);
add_color("NavajoWhite4", 139, 121, 94);
add_color("LemonChiffon1", 255, 250, 205);
add_color("LemonChiffon2", 238, 233, 191);
add_color("LemonChiffon3", 205, 201, 165);
add_color("LemonChiffon4", 139, 137, 112);
add_color("cornsilk1", 255, 248, 220);
add_color("cornsilk2", 238, 232, 205);
add_color("cornsilk3", 205, 200, 177);
add_color("cornsilk4", 139, 136, 120);
add_color("ivory1", 255, 255, 240);
add_color("ivory2", 238, 238, 224);
add_color("ivory3", 205, 205, 193);
add_color("ivory4", 139, 139, 131);
add_color("honeydew1", 240, 255, 240);
add_color("honeydew2", 224, 238, 224);
add_color("honeydew3", 193, 205, 193);
add_color("honeydew4", 131, 139, 131);
add_color("LavenderBlush1", 255, 240, 245);
add_color("LavenderBlush2", 238, 224, 229);
add_color("LavenderBlush3", 205, 193, 197);
add_color("LavenderBlush4", 139, 131, 134);
add_color("MistyRose1", 255, 228, 225);
add_color("MistyRose2", 238, 213, 210);
add_color("MistyRose3", 205, 183, 181);
add_color("MistyRose4", 139, 125, 123);
add_color("azure1", 240, 255, 255);
add_color("azure2", 224, 238, 238);
add_color("azure3", 193, 205, 205);
add_color("azure4", 131, 139, 139);
add_color("SlateBlue1", 131, 111, 255);
add_color("SlateBlue2", 122, 103, 238);
add_color("SlateBlue3", 105, 89, 205);
add_color("SlateBlue4", 71, 60, 139);
add_color("RoyalBlue1", 72, 118, 255);
add_color("RoyalBlue2", 67, 110, 238);
add_color("RoyalBlue3", 58, 95, 205);
add_color("RoyalBlue4", 39, 64, 139);
add_color("blue1", 0, 0, 255);
add_color("blue2", 0, 0, 238);
add_color("blue3", 0, 0, 205);
add_color("blue4", 0, 0, 139);
add_color("DodgerBlue1", 30, 144, 255);
add_color("DodgerBlue2", 28, 134, 238);
add_color("DodgerBlue3", 24, 116, 205);
add_color("DodgerBlue4", 16, 78, 139);
add_color("SteelBlue1", 99, 184, 255);
add_color("SteelBlue2", 92, 172, 238);
add_color("SteelBlue3", 79, 148, 205);
add_color("SteelBlue4", 54, 100, 139);
add_color("DeepSkyBlue1", 0, 191, 255);
add_color("DeepSkyBlue2", 0, 178, 238);
add_color("DeepSkyBlue3", 0, 154, 205);
add_color("DeepSkyBlue4", 0, 104, 139);
add_color("SkyBlue1", 135, 206, 255);
add_color("SkyBlue2", 126, 192, 238);
add_color("SkyBlue3", 108, 166, 205);
add_color("SkyBlue4", 74, 112, 139);
add_color("LightSkyBlue1", 176, 226, 255);
add_color("LightSkyBlue2", 164, 211, 238);
add_color("LightSkyBlue3", 141, 182, 205);
add_color("LightSkyBlue4", 96, 123, 139);
add_color("SlateGray1", 198, 226, 255);
add_color("SlateGray2", 185, 211, 238);
add_color("SlateGray3", 159, 182, 205);
add_color("SlateGray4", 108, 123, 139);
add_color("LightSteelBlue1", 202, 225, 255);
add_color("LightSteelBlue2", 188, 210, 238);
add_color("LightSteelBlue3", 162, 181, 205);
add_color("LightSteelBlue4", 110, 123, 139);
add_color("LightBlue1", 191, 239, 255);
add_color("LightBlue2", 178, 223, 238);
add_color("LightBlue3", 154, 192, 205);
add_color("LightBlue4", 104, 131, 139);
add_color("LightCyan1", 224, 255, 255);
add_color("LightCyan2", 209, 238, 238);
add_color("LightCyan3", 180, 205, 205);
add_color("LightCyan4", 122, 139, 139);
add_color("PaleTurquoise1", 187, 255, 255);
add_color("PaleTurquoise2", 174, 238, 238);
add_color("PaleTurquoise3", 150, 205, 205);
add_color("PaleTurquoise4", 102, 139, 139);
add_color("CadetBlue1", 152, 245, 255);
add_color("CadetBlue2", 142, 229, 238);
add_color("CadetBlue3", 122, 197, 205);
add_color("CadetBlue4", 83, 134, 139);
add_color("turquoise1", 0, 245, 255);
add_color("turquoise2", 0, 229, 238);
add_color("turquoise3", 0, 197, 205);
add_color("turquoise4", 0, 134, 139);
add_color("cyan1", 0, 255, 255);
add_color("cyan2", 0, 238, 238);
add_color("cyan3", 0, 205, 205);
add_color("cyan4", 0, 139, 139);
add_color("DarkSlateGray1", 151, 255, 255);
add_color("DarkSlateGray2", 141, 238, 238);
add_color("DarkSlateGray3", 121, 205, 205);
add_color("DarkSlateGray4", 82, 139, 139);
add_color("aquamarine1", 127, 255, 212);
add_color("aquamarine2", 118, 238, 198);
add_color("aquamarine3", 102, 205, 170);
add_color("aquamarine4", 69, 139, 116);
add_color("DarkSeaGreen1", 193, 255, 193);
add_color("DarkSeaGreen2", 180, 238, 180);
add_color("DarkSeaGreen3", 155, 205, 155);
add_color("DarkSeaGreen4", 105, 139, 105);
add_color("SeaGreen1", 84, 255, 159);
add_color("SeaGreen2", 78, 238, 148);
add_color("SeaGreen3", 67, 205, 128);
add_color("SeaGreen4", 46, 139, 87);
add_color("PaleGreen1", 154, 255, 154);
add_color("PaleGreen2", 144, 238, 144);
add_color("PaleGreen3", 124, 205, 124);
add_color("PaleGreen4", 84, 139, 84);
add_color("SpringGreen1", 0, 255, 127);
add_color("SpringGreen2", 0, 238, 118);
add_color("SpringGreen3", 0, 205, 102);
add_color("SpringGreen4", 0, 139, 69);
add_color("green1", 0, 255, 0);
add_color("green2", 0, 238, 0);
add_color("green3", 0, 205, 0);
add_color("green4", 0, 139, 0);
add_color("chartreuse1", 127, 255, 0);
add_color("chartreuse2", 118, 238, 0);
add_color("chartreuse3", 102, 205, 0);
add_color("chartreuse4", 69, 139, 0);
add_color("OliveDrab1", 192, 255, 62);
add_color("OliveDrab2", 179, 238, 58);
add_color("OliveDrab3", 154, 205, 50);
add_color("OliveDrab4", 105, 139, 34);
add_color("DarkOliveGreen1", 202, 255, 112);
add_color("DarkOliveGreen2", 188, 238, 104);
add_color("DarkOliveGreen3", 162, 205, 90);
add_color("DarkOliveGreen4", 110, 139, 61);
add_color("khaki1", 255, 246, 143);
add_color("khaki2", 238, 230, 133);
add_color("khaki3", 205, 198, 115);
add_color("khaki4", 139, 134, 78);
add_color("LightGoldenrod1", 255, 236, 139);
add_color("LightGoldenrod2", 238, 220, 130);
add_color("LightGoldenrod3", 205, 190, 112);
add_color("LightGoldenrod4", 139, 129, 76);
add_color("LightYellow1", 255, 255, 224);
add_color("LightYellow2", 238, 238, 209);
add_color("LightYellow3", 205, 205, 180);
add_color("LightYellow4", 139, 139, 122);
add_color("yellow1", 255, 255, 0);
add_color("yellow2", 238, 238, 0);
add_color("yellow3", 205, 205, 0);
add_color("yellow4", 139, 139, 0);
add_color("gold1", 255, 215, 0);
add_color("gold2", 238, 201, 0);
add_color("gold3", 205, 173, 0);
add_color("gold4", 139, 117, 0);
add_color("goldenrod1", 255, 193, 37);
add_color("goldenrod2", 238, 180, 34);
add_color("goldenrod3", 205, 155, 29);
add_color("goldenrod4", 139, 105, 20);
add_color("DarkGoldenrod1", 255, 185, 15);
add_color("DarkGoldenrod2", 238, 173, 14);
add_color("DarkGoldenrod3", 205, 149, 12);
add_color("DarkGoldenrod4", 139, 101, 8);
add_color("RosyBrown1", 255, 193, 193);
add_color("RosyBrown2", 238, 180, 180);
add_color("RosyBrown3", 205, 155, 155);
add_color("RosyBrown4", 139, 105, 105);
add_color("IndianRed1", 255, 106, 106);
add_color("IndianRed2", 238, 99, 99);
add_color("IndianRed3", 205, 85, 85);
add_color("IndianRed4", 139, 58, 58);
add_color("sienna1", 255, 130, 71);
add_color("sienna2", 238, 121, 66);
add_color("sienna3", 205, 104, 57);
add_color("sienna4", 139, 71, 38);
add_color("burlywood1", 255, 211, 155);
add_color("burlywood2", 238, 197, 145);
add_color("burlywood3", 205, 170, 125);
add_color("burlywood4", 139, 115, 85);
add_color("wheat1", 255, 231, 186);
add_color("wheat2", 238, 216, 174);
add_color("wheat3", 205, 186, 150);
add_color("wheat4", 139, 126, 102);
add_color("tan1", 255, 165, 79);
add_color("tan2", 238, 154, 73);
add_color("tan3", 205, 133, 63);
add_color("tan4", 139, 90, 43);
add_color("chocolate1", 255, 127, 36);
add_color("chocolate2", 238, 118, 33);
add_color("chocolate3", 205, 102, 29);
add_color("chocolate4", 139, 69, 19);
add_color("firebrick1", 255, 48, 48);
add_color("firebrick2", 238, 44, 44);
add_color("firebrick3", 205, 38, 38);
add_color("firebrick4", 139, 26, 26);
add_color("brown1", 255, 64, 64);
add_color("brown2", 238, 59, 59);
add_color("brown3", 205, 51, 51);
add_color("brown4", 139, 35, 35);
add_color("salmon1", 255, 140, 105);
add_color("salmon2", 238, 130, 98);
add_color("salmon3", 205, 112, 84);
add_color("salmon4", 139, 76, 57);
add_color("LightSalmon1", 255, 160, 122);
add_color("LightSalmon2", 238, 149, 114);
add_color("LightSalmon3", 205, 129, 98);
add_color("LightSalmon4", 139, 87, 66);
add_color("orange1", 255, 165, 0);
add_color("orange2", 238, 154, 0);
add_color("orange3", 205, 133, 0);
add_color("orange4", 139, 90, 0);
add_color("DarkOrange1", 255, 127, 0);
add_color("DarkOrange2", 238, 118, 0);
add_color("DarkOrange3", 205, 102, 0);
add_color("DarkOrange4", 139, 69, 0);
add_color("coral1", 255, 114, 86);
add_color("coral2", 238, 106, 80);
add_color("coral3", 205, 91, 69);
add_color("coral4", 139, 62, 47);
add_color("tomato1", 255, 99, 71);
add_color("tomato2", 238, 92, 66);
add_color("tomato3", 205, 79, 57);
add_color("tomato4", 139, 54, 38);
add_color("OrangeRed1", 255, 69, 0);
add_color("OrangeRed2", 238, 64, 0);
add_color("OrangeRed3", 205, 55, 0);
add_color("OrangeRed4", 139, 37, 0);
add_color("red1", 255, 0, 0);
add_color("red2", 238, 0, 0);
add_color("red3", 205, 0, 0);
add_color("red4", 139, 0, 0);
add_color("DeepPink1", 255, 20, 147);
add_color("DeepPink2", 238, 18, 137);
add_color("DeepPink3", 205, 16, 118);
add_color("DeepPink4", 139, 10, 80);
add_color("HotPink1", 255, 110, 180);
add_color("HotPink2", 238, 106, 167);
add_color("HotPink3", 205, 96, 144);
add_color("HotPink4", 139, 58, 98);
add_color("pink1", 255, 181, 197);
add_color("pink2", 238, 169, 184);
add_color("pink3", 205, 145, 158);
add_color("pink4", 139, 99, 108);
add_color("LightPink1", 255, 174, 185);
add_color("LightPink2", 238, 162, 173);
add_color("LightPink3", 205, 140, 149);
add_color("LightPink4", 139, 95, 101);
add_color("PaleVioletRed1", 255, 130, 171);
add_color("PaleVioletRed2", 238, 121, 159);
add_color("PaleVioletRed3", 205, 104, 137);
add_color("PaleVioletRed4", 139, 71, 93);
add_color("maroon1", 255, 52, 179);
add_color("maroon2", 238, 48, 167);
add_color("maroon3", 205, 41, 144);
add_color("maroon4", 139, 28, 98);
add_color("VioletRed1", 255, 62, 150);
add_color("VioletRed2", 238, 58, 140);
add_color("VioletRed3", 205, 50, 120);
add_color("VioletRed4", 139, 34, 82);
add_color("magenta1", 255, 0, 255);
add_color("magenta2", 238, 0, 238);
add_color("magenta3", 205, 0, 205);
add_color("magenta4", 139, 0, 139);
add_color("orchid1", 255, 131, 250);
add_color("orchid2", 238, 122, 233);
add_color("orchid3", 205, 105, 201);
add_color("orchid4", 139, 71, 137);
add_color("plum1", 255, 187, 255);
add_color("plum2", 238, 174, 238);
add_color("plum3", 205, 150, 205);
add_color("plum4", 139, 102, 139);
add_color("MediumOrchid1", 224, 102, 255);
add_color("MediumOrchid2", 209, 95, 238);
add_color("MediumOrchid3", 180, 82, 205);
add_color("MediumOrchid4", 122, 55, 139);
add_color("DarkOrchid1", 191, 62, 255);
add_color("DarkOrchid2", 178, 58, 238);
add_color("DarkOrchid3", 154, 50, 205);
add_color("DarkOrchid4", 104, 34, 139);
add_color("purple1", 155, 48, 255);
add_color("purple2", 145, 44, 238);
add_color("purple3", 125, 38, 205);
add_color("purple4", 85, 26, 139);
add_color("MediumPurple1", 171, 130, 255);
add_color("MediumPurple2", 159, 121, 238);
add_color("MediumPurple3", 137, 104, 205);
add_color("MediumPurple4", 93, 71, 139);
add_color("thistle1", 255, 225, 255);
add_color("thistle2", 238, 210, 238);
add_color("thistle3", 205, 181, 205);
add_color("thistle4", 139, 123, 139);
add_color("gray0", 0, 0, 0);
add_color("grey0", 0, 0, 0);
add_color("gray1", 3, 3, 3);
add_color("grey1", 3, 3, 3);
add_color("gray2", 5, 5, 5);
add_color("grey2", 5, 5, 5);
add_color("gray3", 8, 8, 8);
add_color("grey3", 8, 8, 8);
add_color("gray4", 10, 10, 10);
add_color("grey4", 10, 10, 10);
add_color("gray5", 13, 13, 13);
add_color("grey5", 13, 13, 13);
add_color("gray6", 15, 15, 15);
add_color("grey6", 15, 15, 15);
add_color("gray7", 18, 18, 18);
add_color("grey7", 18, 18, 18);
add_color("gray8", 20, 20, 20);
add_color("grey8", 20, 20, 20);
add_color("gray9", 23, 23, 23);
add_color("grey9", 23, 23, 23);
add_color("gray10", 26, 26, 26);
add_color("grey10", 26, 26, 26);
add_color("gray11", 28, 28, 28);
add_color("grey11", 28, 28, 28);
add_color("gray12", 31, 31, 31);
add_color("grey12", 31, 31, 31);
add_color("gray13", 33, 33, 33);
add_color("grey13", 33, 33, 33);
add_color("gray14", 36, 36, 36);
add_color("grey14", 36, 36, 36);
add_color("gray15", 38, 38, 38);
add_color("grey15", 38, 38, 38);
add_color("gray16", 41, 41, 41);
add_color("grey16", 41, 41, 41);
add_color("gray17", 43, 43, 43);
add_color("grey17", 43, 43, 43);
add_color("gray18", 46, 46, 46);
add_color("grey18", 46, 46, 46);
add_color("gray19", 48, 48, 48);
add_color("grey19", 48, 48, 48);
add_color("gray20", 51, 51, 51);
add_color("grey20", 51, 51, 51);
add_color("gray21", 54, 54, 54);
add_color("grey21", 54, 54, 54);
add_color("gray22", 56, 56, 56);
add_color("grey22", 56, 56, 56);
add_color("gray23", 59, 59, 59);
add_color("grey23", 59, 59, 59);
add_color("gray24", 61, 61, 61);
add_color("grey24", 61, 61, 61);
add_color("gray25", 64, 64, 64);
add_color("grey25", 64, 64, 64);
add_color("gray26", 66, 66, 66);
add_color("grey26", 66, 66, 66);
add_color("gray27", 69, 69, 69);
add_color("grey27", 69, 69, 69);
add_color("gray28", 71, 71, 71);
add_color("grey28", 71, 71, 71);
add_color("gray29", 74, 74, 74);
add_color("grey29", 74, 74, 74);
add_color("gray30", 77, 77, 77);
add_color("grey30", 77, 77, 77);
add_color("gray31", 79, 79, 79);
add_color("grey31", 79, 79, 79);
add_color("gray32", 82, 82, 82);
add_color("grey32", 82, 82, 82);
add_color("gray33", 84, 84, 84);
add_color("grey33", 84, 84, 84);
add_color("gray34", 87, 87, 87);
add_color("grey34", 87, 87, 87);
add_color("gray35", 89, 89, 89);
add_color("grey35", 89, 89, 89);
add_color("gray36", 92, 92, 92);
add_color("grey36", 92, 92, 92);
add_color("gray37", 94, 94, 94);
add_color("grey37", 94, 94, 94);
add_color("gray38", 97, 97, 97);
add_color("grey38", 97, 97, 97);
add_color("gray39", 99, 99, 99);
add_color("grey39", 99, 99, 99);
add_color("gray40", 102, 102, 102);
add_color("grey40", 102, 102, 102);
add_color("gray41", 105, 105, 105);
add_color("grey41", 105, 105, 105);
add_color("gray42", 107, 107, 107);
add_color("grey42", 107, 107, 107);
add_color("gray43", 110, 110, 110);
add_color("grey43", 110, 110, 110);
add_color("gray44", 112, 112, 112);
add_color("grey44", 112, 112, 112);
add_color("gray45", 115, 115, 115);
add_color("grey45", 115, 115, 115);
add_color("gray46", 117, 117, 117);
add_color("grey46", 117, 117, 117);
add_color("gray47", 120, 120, 120);
add_color("grey47", 120, 120, 120);
add_color("gray48", 122, 122, 122);
add_color("grey48", 122, 122, 122);
add_color("gray49", 125, 125, 125);
add_color("grey49", 125, 125, 125);
add_color("gray50", 127, 127, 127);
add_color("grey50", 127, 127, 127);
add_color("gray51", 130, 130, 130);
add_color("grey51", 130, 130, 130);
add_color("gray52", 133, 133, 133);
add_color("grey52", 133, 133, 133);
add_color("gray53", 135, 135, 135);
add_color("grey53", 135, 135, 135);
add_color("gray54", 138, 138, 138);
add_color("grey54", 138, 138, 138);
add_color("gray55", 140, 140, 140);
add_color("grey55", 140, 140, 140);
add_color("gray56", 143, 143, 143);
add_color("grey56", 143, 143, 143);
add_color("gray57", 145, 145, 145);
add_color("grey57", 145, 145, 145);
add_color("gray58", 148, 148, 148);
add_color("grey58", 148, 148, 148);
add_color("gray59", 150, 150, 150);
add_color("grey59", 150, 150, 150);
add_color("gray60", 153, 153, 153);
add_color("grey60", 153, 153, 153);
add_color("gray61", 156, 156, 156);
add_color("grey61", 156, 156, 156);
add_color("gray62", 158, 158, 158);
add_color("grey62", 158, 158, 158);
add_color("gray63", 161, 161, 161);
add_color("grey63", 161, 161, 161);
add_color("gray64", 163, 163, 163);
add_color("grey64", 163, 163, 163);
add_color("gray65", 166, 166, 166);
add_color("grey65", 166, 166, 166);
add_color("gray66", 168, 168, 168);
add_color("grey66", 168, 168, 168);
add_color("gray67", 171, 171, 171);
add_color("grey67", 171, 171, 171);
add_color("gray68", 173, 173, 173);
add_color("grey68", 173, 173, 173);
add_color("gray69", 176, 176, 176);
add_color("grey69", 176, 176, 176);
add_color("gray70", 179, 179, 179);
add_color("grey70", 179, 179, 179);
add_color("gray71", 181, 181, 181);
add_color("grey71", 181, 181, 181);
add_color("gray72", 184, 184, 184);
add_color("grey72", 184, 184, 184);
add_color("gray73", 186, 186, 186);
add_color("grey73", 186, 186, 186);
add_color("gray74", 189, 189, 189);
add_color("grey74", 189, 189, 189);
add_color("gray75", 191, 191, 191);
add_color("grey75", 191, 191, 191);
add_color("gray76", 194, 194, 194);
add_color("grey76", 194, 194, 194);
add_color("gray77", 196, 196, 196);
add_color("grey77", 196, 196, 196);
add_color("gray78", 199, 199, 199);
add_color("grey78", 199, 199, 199);
add_color("gray79", 201, 201, 201);
add_color("grey79", 201, 201, 201);
add_color("gray80", 204, 204, 204);
add_color("grey80", 204, 204, 204);
add_color("gray81", 207, 207, 207);
add_color("grey81", 207, 207, 207);
add_color("gray82", 209, 209, 209);
add_color("grey82", 209, 209, 209);
add_color("gray83", 212, 212, 212);
add_color("grey83", 212, 212, 212);
add_color("gray84", 214, 214, 214);
add_color("grey84", 214, 214, 214);
add_color("gray85", 217, 217, 217);
add_color("grey85", 217, 217, 217);
add_color("gray86", 219, 219, 219);
add_color("grey86", 219, 219, 219);
add_color("gray87", 222, 222, 222);
add_color("grey87", 222, 222, 222);
add_color("gray88", 224, 224, 224);
add_color("grey88", 224, 224, 224);
add_color("gray89", 227, 227, 227);
add_color("grey89", 227, 227, 227);
add_color("gray90", 229, 229, 229);
add_color("grey90", 229, 229, 229);
add_color("gray91", 232, 232, 232);
add_color("grey91", 232, 232, 232);
add_color("gray92", 235, 235, 235);
add_color("grey92", 235, 235, 235);
add_color("gray93", 237, 237, 237);
add_color("grey93", 237, 237, 237);
add_color("gray94", 240, 240, 240);
add_color("grey94", 240, 240, 240);
add_color("gray95", 242, 242, 242);
add_color("grey95", 242, 242, 242);
add_color("gray96", 245, 245, 245);
add_color("grey96", 245, 245, 245);
add_color("gray97", 247, 247, 247);
add_color("grey97", 247, 247, 247);
add_color("gray98", 250, 250, 250);
add_color("grey98", 250, 250, 250);
add_color("gray99", 252, 252, 252);
add_color("grey99", 252, 252, 252);
add_color("gray100", 255, 255, 255);
add_color("grey100", 255, 255, 255);
add_color("dark grey", 169, 169, 169);
add_color("DarkGrey", 169, 169, 169);
add_color("dark gray", 169, 169, 169);
add_color("DarkGray", 169, 169, 169);
add_color("dark blue", 0, 0, 139);
add_color("DarkBlue", 0, 0, 139);
add_color("dark cyan", 0, 139, 139);
add_color("DarkCyan", 0, 139, 139);
add_color("dark magenta", 139, 0, 139);
add_color("DarkMagenta", 139, 0, 139);
add_color("dark red", 139, 0, 0);
add_color("DarkRed", 139, 0, 0);
add_color("light green", 144, 238, 144);
add_color("LightGreen", 144, 238, 144);
add_color("crimson", 220, 20, 60);
add_color("indigo", 75, 0, 130);
add_color("olive", 128, 128, 0);
add_color("rebecca purple", 102, 51, 153);
add_color("RebeccaPurple", 102, 51, 153);
add_color("silver", 192, 192, 192);
add_color("teal", 0, 128, 128);
}