ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/cv/nff2rad.c
(Generate patch)

Comparing ray/src/cv/nff2rad.c (file contents):
Revision 1.2 by greg, Tue Dec 11 09:28:27 1990 UTC vs.
Revision 2.7 by schorsch, Sat Nov 15 17:54:06 2003 UTC

# Line 1 | Line 1
1 /* Copyright (c) 1990 Regents of the University of California */
2
1   #ifndef lint
2 < static char SCCSid[] = "$SunId$ LBL";
2 > static const char       RCSid[] = "$Id$";
3   #endif
6
4   /*
5   * Convert Neutral File Format input to Radiance scene description.
6   *
7   *      12/9/90         Greg Ward
8 + *      02/7/92         Peter Averkamp added X11(MTV)color names &
9 + *                      fixed some lf's for direct import of MTV
10 + *                      source files
11   */
12  
13   /******************************************************************
# Line 66 | Line 66 | These are explained in depth below:    { see conversion r
66  
67   ***********************************************************************/
68  
69 + #include <stdlib.h>
70   #include <stdio.h>
71 + #include <string.h>
72  
73 + #include "rtmath.h"
74 +
75 + typedef double Flt ;
76 + typedef Flt Vec[3] ;
77 + typedef Vec Point ;
78 + typedef Vec Color ;
79 +
80 + #define VecCopy(a,b)     (b)[0]=(a)[0];(b)[1]=(a)[1];(b)[2]=(a)[2];
81 + #define         NCOLORS         (738)
82 +
83 + typedef struct t_color_entry {
84 +        char *  ce_name ;
85 +        Vec     ce_color ;
86 + } ColorEntry ;
87 +
88 + #define LESS_THAN -1
89 + #define GREATER_THAN 1
90 + #define EQUAL_TO 0
91 +
92   char    *viewfile = NULL;       /* view parameters file */
93  
94   char    *progname;
95  
96 + void init(void);
97 + void nff2rad(void);
98 + void comment(void);
99 + void view(void);
100 + void light(void);
101 + void background(void);
102 + void fill(void);
103 + void cone(void);
104 + void sphere(void);
105 + void poly(void);
106 + int LookupColorByName(char * name, Vec color);
107 + int BinarySearch(char * name, int l, int h, ColorEntry array[]);
108  
109 < main(argc, argv)                /* convert NFF file to Radiance */
110 < int     argc;
111 < char    *argv[];
109 >
110 > int
111 > main(           /* convert NFF file to Radiance */
112 >        int     argc,
113 >        char    *argv[]
114 > )
115   {
116          int     i;
117          
# Line 83 | Line 119 | char   *argv[];
119          for (i = 1; i < argc; i++)
120                  if (argc-i > 1 && !strcmp(argv[i], "-vf"))
121                          viewfile = argv[++i];
122 +                else if (!strncmp(argv[i], "-h",2))
123 +                        goto userr;
124                  else
125                          break;
126 <        if (i-argc > 1)
126 >        if (argc-i > 1)
127                  goto userr;
128 <        if (i-argc == 1 && freopen(argv[i], "r", stdin) == NULL) {
128 >        if (argc-i == 1 && freopen(argv[i], "r", stdin) == NULL) {
129                  perror(argv[i]);
130                  exit(1);
131          }
# Line 100 | Line 138 | userr:
138   }
139  
140  
141 < init()                  /* spit out initial definitions */
141 > void
142 > init(void)                      /* spit out initial definitions */
143   {
144          printf("# File created by %s\n", progname);
145          printf("\nvoid light light\n");
146 <        printf("0\n0\n3 1 1 1\n");
146 >        printf("0\n0\n3 1e6 1e6 1e6\n");
147          printf("\nvoid plastic fill\n");
148          printf("0\n0\n5 .5 .5 .5 0 0\n");
149   }
150  
151  
152 < nff2rad()               /* convert NFF on stdin to Radiance on stdout */
152 > void
153 > nff2rad(void)           /* convert NFF on stdin to Radiance on stdout */
154   {
155          register int    c;
156          
# Line 166 | Line 206 | Format:
206      
207   ******************/
208  
209 < comment()
209 > void
210 > comment(void)
211   {
212          register int    c;
213          
# Line 223 | Line 264 | The parameters are:
264  
265   ***************/
266  
267 < view()
267 > void
268 > view(void)
269   {
270          static FILE     *fp = NULL;
271          float   from[3], at[3], up[3], angle;
# Line 272 | Line 314 | Format:
314  
315   **************************/
316  
317 < light()
317 > void
318 > light(void)
319   {
320          static int      nlights = 0;
321          register int    c;
322          float   x, y, z;
323 <        
324 <        if (scanf("%f %f %f", &x, &y, &z) != 3) {
325 <                fprintf(stderr, "%s: light source syntax error\n", progname);
326 <                exit(1);
323 >
324 >        if (scanf("%f %f %f",&x, &y, &z) != 3) {
325 >            fprintf(stderr, "%s: light source syntax error\n", progname);
326 >            exit(1);
327          }
328          while ((c = getchar()) != EOF && c != '\n')
329                  ;
330 <        printf("\nlight sphere l%d ", ++nlights);
331 <        printf("0\n0\n4 %g %g %g 1\n", x, y, z);
330 >        printf("\nlight sphere l%d \n", ++nlights);
331 >        printf("0\n0\n4 %g %g %g .01\n", x, y, z);
332   }
333  
334  
# Line 301 | Line 344 | Format:
344  
345   ********************/
346  
347 < background()
347 > void
348 > background(void)
349   {
350          float   r, g, b;
351 <        
352 <        if (scanf("%f %f %f", &r, &g, &b) != 3) {
351 >        char colname[50];
352 >        double cvec[3];
353 >
354 >        if (scanf("%s", colname) != 1) {
355 >            fprintf(stderr,"%s: background syntax error\n",progname);exit(1);
356 >        }
357 >        if(LookupColorByName(colname,cvec)==1){
358 >            r=cvec[0];g=cvec[1];b=cvec[2];
359 >        }else{
360 >            if(sscanf(colname,"%f",&r)!=1 ||
361 >               scanf("%f %f", &g, &b) !=2) {
362                  fprintf(stderr, "%s: background syntax error\n", progname);
363                  exit(1);
364 +            }
365          }
366          printf("\nvoid glow backg_color\n");
367          printf("0\n0\n4 %g %g %g 0\n", r, g, b);
# Line 338 | Line 392 | Format:
392  
393   *********************/
394  
395 < fill()
395 > void
396 > fill(void)
397   {
398          float   r, g, b, d, s, p, t, n;
399 <        
400 <        if (scanf("%f %f %f %f %f %f %f %f", &r, &g, &b,
401 <                        &d, &s, &p, &t, &n) != 8) {
399 >        char colname[50];
400 >        double cvec[3];
401 >
402 >        if (scanf("%s", colname) != 1) {
403 >            fprintf(stderr,"%s: fill syntax error\n",progname);exit(1);
404 >        }
405 >        if(LookupColorByName(colname,cvec)==1){
406 >            r=cvec[0];g=cvec[1];b=cvec[2];
407 >        }else{
408 >            if(sscanf(colname,"%f",&r)!=1 ||
409 >               scanf("%f %f", &g, &b) !=2) {
410 >                fprintf(stderr, "%s: fill syntax error\n", progname);
411 >                exit(1);
412 >            }
413 >        }
414 >        if (scanf("%f %f %f %f %f", &d, &s, &p, &t, &n) != 5) {
415                  fprintf(stderr, "%s: fill material syntax error\n", progname);
416                  exit(1);
417          }
350        d /= 1.-s-t;
351        r *= d;
352        g *= d;
353        b *= d;
418          if (p > 1.)
419                  p = 1./p;
420          if (t > .001) {         /* has transmission */
421 <                printf("\nvoid trans fill\n");
422 <                printf("0\n0\n7 %g %g %g %g 0 %g 1\n", r, g, b, s, t);
421 >                if (n > 1.1) {          /* has index of refraction */
422 >                        printf("\nvoid dielectric fill\n");
423 >                        printf("0\n0\n5 %g %g %g %g 0\n", r, g, b, n);
424 >                } else {                /* transmits w/o refraction */
425 >                        printf("\nvoid trans fill\n");
426 >                        printf("0\n0\n7 %g %g %g %g 0 %g 1\n",
427 >                                        r*d, g*d, b*d, s, t);
428 >                }
429          } else {                /* no transmission */
430                  printf("\nvoid plastic fill\n");
431 <                printf("0\n0\n5 %g %g %g %g %g\n", r, g, b, s, p);
431 >                printf("0\n0\n5 %g %g %g %g %g\n", r*d, g*d, b*d, s, p);
432          }
433   }
434  
# Line 388 | Line 458 | Format:
458  
459   ************************/
460  
461 < cone()
461 > void
462 > cone(void)
463   {
464          static int      ncs = 0;
465          int     invert;
# Line 400 | Line 471 | cone()
471                                  progname);
472                  exit(1);
473          }
474 <        if (invert = r0 < 0.) {
474 >        if ( (invert = r0 < 0.) ) {
475                  r0 = -r0;
476                  r1 = -r1;
477          }
478          if (r0-r1 < .001 && r1-r0 < .001) {     /* cylinder */
479 <                printf("\nfill %s c%d ", invert?"tube":"cylinder", ++ncs);
479 >                printf("\nfill %s c%d \n", invert?"tube":"cylinder", ++ncs);
480                  printf("0\n0\n7\n");
481                  printf("\t%g\t%g\t%g\n", x0, y0, z0);
482                  printf("\t%g\t%g\t%g\n", x1, y1, z1);
483                  printf("\t%g\n", r0);
484          } else {                                /* cone */
485 <                printf("\nfill %s c%d ", invert?"cup":"cone", ++ncs);
485 >                printf("\nfill %s c%d \n", invert?"cup":"cone", ++ncs);
486                  printf("0\n0\n8\n");
487                  printf("\t%g\t%g\t%g\n", x0, y0, z0);
488                  printf("\t%g\t%g\t%g\n", x1, y1, z1);
# Line 433 | Line 504 | Format:
504  
505   ******************/
506  
507 < sphere()
507 > void
508 > sphere(void)
509   {
510          static int      nspheres = 0;
511          float   x, y, z, r;
# Line 443 | Line 515 | sphere()
515                  exit(1);
516          }
517          if (r < 0.) {
518 <                printf("\nfill bubble s%d ", ++nspheres);
518 >                printf("\nfill bubble s%d \n", ++nspheres);
519                  printf("0\n0\n4 %g %g %g %g\n", x, y, z, -r);
520          } else {
521 <                printf("\nfill sphere s%d ", ++nspheres);
521 >                printf("\nfill sphere s%d \n", ++nspheres);
522                  printf("0\n0\n4 %g %g %g %g\n", x, y, z, r);
523          }
524   }
# Line 488 | Line 560 | Format:
560  
561   *******************/
562  
563 < poly()
563 > void
564 > poly(void)
565   {
566          static int      npolys = 0;
567          int     ispatch;
# Line 502 | Line 575 | poly()
575          }
576          if (scanf("%d", &nverts) != 1)
577                  goto fmterr;
578 <        printf("\nfill polygon p%d ", ++npolys);
578 >        printf("\nfill polygon p%d \n", ++npolys);
579          printf("0\n0\n%d\n", 3*nverts);
580          while (nverts-- > 0) {
581                  if (scanf("%f %f %f", &x, &y, &z) != 3)
# Line 515 | Line 588 | poly()
588   fmterr:
589          fprintf(stderr, "%s: polygon or patch syntax error\n", progname);
590          exit(1);
591 + }
592 + /***********************************************************************
593 + * $Author$ (Mark VandeWettering, drizzle.cs.uoregon.edu)
594 + * $Revision$
595 + * $Date$
596 + * $Log$
597 + * Revision 2.7  2003/11/15 17:54:06  schorsch
598 + * Continued ANSIfication and reduced compile warnings.
599 + *
600 + * Revision 2.6  2003/07/27 22:12:01  schorsch
601 + * Added grouping parens to reduce ambiguity warnings.
602 + *
603 + * Revision 2.5  2003/02/22 02:07:23  greg
604 + * Changes and check-in for 3.5 release
605 + * Includes new source files and modifications not recorded for many years
606 + * See ray/doc/notes/ReleaseNotes for notes between 3.1 and 3.5 release
607 + *
608 + * Revision 1.2  88/09/12  12:53:47  markv
609 + * Fixed problem in LookupColorbyName, had return ; and return(0).
610 + * [ Thank you lint! ]
611 + *
612 + * Revision 1.1  88/09/11  11:00:37  markv
613 + * Initial revision
614 + *
615 + * Peter Averkamp 92/02/01
616 + * added complete X11R5 rgb.txt-table, hacked standalone version
617 + * for nff2rad
618 + *
619 + ***********************************************************************/
620 +
621 + /*
622 + * Note: These colors must be in sorted order, because we binary search
623 + * for them.
624 + *
625 + * They were swiped from the X-11 distribution.  Sorry....
626 + */
627 +
628 + ColorEntry Colors[] = {
629 + {"AliceBlue",  {0.941176 , 0.972549 , 1.000000 }},
630 + {"AntiqueWhite",  {0.980392 , 0.921569 , 0.843137 }},
631 + {"AntiqueWhite1",  {1.000000 , 0.937255 , 0.858824 }},
632 + {"AntiqueWhite2",  {0.933333 , 0.874510 , 0.800000 }},
633 + {"AntiqueWhite3",  {0.803922 , 0.752941 , 0.690196 }},
634 + {"AntiqueWhite4",  {0.545098 , 0.513725 , 0.470588 }},
635 + {"BlanchedAlmond",  {1.000000 , 0.921569 , 0.803922 }},
636 + {"BlueViolet",  {0.541176 , 0.168627 , 0.886275 }},
637 + {"CadetBlue",  {0.372549 , 0.619608 , 0.627451 }},
638 + {"CadetBlue1",  {0.596078 , 0.960784 , 1.000000 }},
639 + {"CadetBlue2",  {0.556863 , 0.898039 , 0.933333 }},
640 + {"CadetBlue3",  {0.478431 , 0.772549 , 0.803922 }},
641 + {"CadetBlue4",  {0.325490 , 0.525490 , 0.545098 }},
642 + {"CornflowerBlue",  {0.392157 , 0.584314 , 0.929412 }},
643 + {"DarkGoldenrod",  {0.721569 , 0.525490 , 0.043137 }},
644 + {"DarkGoldenrod1",  {1.000000 , 0.725490 , 0.058824 }},
645 + {"DarkGoldenrod2",  {0.933333 , 0.678431 , 0.054902 }},
646 + {"DarkGoldenrod3",  {0.803922 , 0.584314 , 0.047059 }},
647 + {"DarkGoldenrod4",  {0.545098 , 0.396078 , 0.031373 }},
648 + {"DarkGreen",  {0.000000 , 0.392157 , 0.000000 }},
649 + {"DarkKhaki",  {0.741176 , 0.717647 , 0.419608 }},
650 + {"DarkOliveGreen",  {0.333333 , 0.419608 , 0.184314 }},
651 + {"DarkOliveGreen1",  {0.792157 , 1.000000 , 0.439216 }},
652 + {"DarkOliveGreen2",  {0.737255 , 0.933333 , 0.407843 }},
653 + {"DarkOliveGreen3",  {0.635294 , 0.803922 , 0.352941 }},
654 + {"DarkOliveGreen4",  {0.431373 , 0.545098 , 0.239216 }},
655 + {"DarkOrange",  {1.000000 , 0.549020 , 0.000000 }},
656 + {"DarkOrange1",  {1.000000 , 0.498039 , 0.000000 }},
657 + {"DarkOrange2",  {0.933333 , 0.462745 , 0.000000 }},
658 + {"DarkOrange3",  {0.803922 , 0.400000 , 0.000000 }},
659 + {"DarkOrange4",  {0.545098 , 0.270588 , 0.000000 }},
660 + {"DarkOrchid",  {0.600000 , 0.196078 , 0.800000 }},
661 + {"DarkOrchid1",  {0.749020 , 0.243137 , 1.000000 }},
662 + {"DarkOrchid2",  {0.698039 , 0.227451 , 0.933333 }},
663 + {"DarkOrchid3",  {0.603922 , 0.196078 , 0.803922 }},
664 + {"DarkOrchid4",  {0.407843 , 0.133333 , 0.545098 }},
665 + {"DarkSalmon",  {0.913725 , 0.588235 , 0.478431 }},
666 + {"DarkSeaGreen",  {0.560784 , 0.737255 , 0.560784 }},
667 + {"DarkSeaGreen1",  {0.756863 , 1.000000 , 0.756863 }},
668 + {"DarkSeaGreen2",  {0.705882 , 0.933333 , 0.705882 }},
669 + {"DarkSeaGreen3",  {0.607843 , 0.803922 , 0.607843 }},
670 + {"DarkSeaGreen4",  {0.411765 , 0.545098 , 0.411765 }},
671 + {"DarkSlateBlue",  {0.282353 , 0.239216 , 0.545098 }},
672 + {"DarkSlateGray",  {0.184314 , 0.309804 , 0.309804 }},
673 + {"DarkSlateGray1",  {0.592157 , 1.000000 , 1.000000 }},
674 + {"DarkSlateGray2",  {0.552941 , 0.933333 , 0.933333 }},
675 + {"DarkSlateGray3",  {0.474510 , 0.803922 , 0.803922 }},
676 + {"DarkSlateGray4",  {0.321569 , 0.545098 , 0.545098 }},
677 + {"DarkSlateGrey",  {0.184314 , 0.309804 , 0.309804 }},
678 + {"DarkTurquoise",  {0.000000 , 0.807843 , 0.819608 }},
679 + {"DarkViolet",  {0.580392 , 0.000000 , 0.827451 }},
680 + {"DeepPink",  {1.000000 , 0.078431 , 0.576471 }},
681 + {"DeepPink1",  {1.000000 , 0.078431 , 0.576471 }},
682 + {"DeepPink2",  {0.933333 , 0.070588 , 0.537255 }},
683 + {"DeepPink3",  {0.803922 , 0.062745 , 0.462745 }},
684 + {"DeepPink4",  {0.545098 , 0.039216 , 0.313725 }},
685 + {"DeepSkyBlue",  {0.000000 , 0.749020 , 1.000000 }},
686 + {"DeepSkyBlue1",  {0.000000 , 0.749020 , 1.000000 }},
687 + {"DeepSkyBlue2",  {0.000000 , 0.698039 , 0.933333 }},
688 + {"DeepSkyBlue3",  {0.000000 , 0.603922 , 0.803922 }},
689 + {"DeepSkyBlue4",  {0.000000 , 0.407843 , 0.545098 }},
690 + {"DimGray",  {0.411765 , 0.411765 , 0.411765 }},
691 + {"DimGrey",  {0.411765 , 0.411765 , 0.411765 }},
692 + {"DodgerBlue",  {0.117647 , 0.564706 , 1.000000 }},
693 + {"DodgerBlue1",  {0.117647 , 0.564706 , 1.000000 }},
694 + {"DodgerBlue2",  {0.109804 , 0.525490 , 0.933333 }},
695 + {"DodgerBlue3",  {0.094118 , 0.454902 , 0.803922 }},
696 + {"DodgerBlue4",  {0.062745 , 0.305882 , 0.545098 }},
697 + {"FloralWhite",  {1.000000 , 0.980392 , 0.941176 }},
698 + {"ForestGreen",  {0.133333 , 0.545098 , 0.133333 }},
699 + {"GhostWhite",  {0.972549 , 0.972549 , 1.000000 }},
700 + {"GreenYellow",  {0.678431 , 1.000000 , 0.184314 }},
701 + {"HotPink",  {1.000000 , 0.411765 , 0.705882 }},
702 + {"HotPink1",  {1.000000 , 0.431373 , 0.705882 }},
703 + {"HotPink2",  {0.933333 , 0.415686 , 0.654902 }},
704 + {"HotPink3",  {0.803922 , 0.376471 , 0.564706 }},
705 + {"HotPink4",  {0.545098 , 0.227451 , 0.384314 }},
706 + {"IndianRed",  {0.803922 , 0.360784 , 0.360784 }},
707 + {"IndianRed1",  {1.000000 , 0.415686 , 0.415686 }},
708 + {"IndianRed2",  {0.933333 , 0.388235 , 0.388235 }},
709 + {"IndianRed3",  {0.803922 , 0.333333 , 0.333333 }},
710 + {"IndianRed4",  {0.545098 , 0.227451 , 0.227451 }},
711 + {"LavenderBlush",  {1.000000 , 0.941176 , 0.960784 }},
712 + {"LavenderBlush1",  {1.000000 , 0.941176 , 0.960784 }},
713 + {"LavenderBlush2",  {0.933333 , 0.878431 , 0.898039 }},
714 + {"LavenderBlush3",  {0.803922 , 0.756863 , 0.772549 }},
715 + {"LavenderBlush4",  {0.545098 , 0.513725 , 0.525490 }},
716 + {"LawnGreen",  {0.486275 , 0.988235 , 0.000000 }},
717 + {"LemonChiffon",  {1.000000 , 0.980392 , 0.803922 }},
718 + {"LemonChiffon1",  {1.000000 , 0.980392 , 0.803922 }},
719 + {"LemonChiffon2",  {0.933333 , 0.913725 , 0.749020 }},
720 + {"LemonChiffon3",  {0.803922 , 0.788235 , 0.647059 }},
721 + {"LemonChiffon4",  {0.545098 , 0.537255 , 0.439216 }},
722 + {"LightBlue",  {0.678431 , 0.847059 , 0.901961 }},
723 + {"LightBlue1",  {0.749020 , 0.937255 , 1.000000 }},
724 + {"LightBlue2",  {0.698039 , 0.874510 , 0.933333 }},
725 + {"LightBlue3",  {0.603922 , 0.752941 , 0.803922 }},
726 + {"LightBlue4",  {0.407843 , 0.513725 , 0.545098 }},
727 + {"LightCoral",  {0.941176 , 0.501961 , 0.501961 }},
728 + {"LightCyan",  {0.878431 , 1.000000 , 1.000000 }},
729 + {"LightCyan1",  {0.878431 , 1.000000 , 1.000000 }},
730 + {"LightCyan2",  {0.819608 , 0.933333 , 0.933333 }},
731 + {"LightCyan3",  {0.705882 , 0.803922 , 0.803922 }},
732 + {"LightCyan4",  {0.478431 , 0.545098 , 0.545098 }},
733 + {"LightGoldenrod",  {0.933333 , 0.866667 , 0.509804 }},
734 + {"LightGoldenrod1",  {1.000000 , 0.925490 , 0.545098 }},
735 + {"LightGoldenrod2",  {0.933333 , 0.862745 , 0.509804 }},
736 + {"LightGoldenrod3",  {0.803922 , 0.745098 , 0.439216 }},
737 + {"LightGoldenrod4",  {0.545098 , 0.505882 , 0.298039 }},
738 + {"LightGoldenrodYellow",  {0.980392 , 0.980392 , 0.823529 }},
739 + {"LightGray",  {0.827451 , 0.827451 , 0.827451 }},
740 + {"LightGrey",  {0.827451 , 0.827451 , 0.827451 }},
741 + {"LightPink",  {1.000000 , 0.713725 , 0.756863 }},
742 + {"LightPink1",  {1.000000 , 0.682353 , 0.725490 }},
743 + {"LightPink2",  {0.933333 , 0.635294 , 0.678431 }},
744 + {"LightPink3",  {0.803922 , 0.549020 , 0.584314 }},
745 + {"LightPink4",  {0.545098 , 0.372549 , 0.396078 }},
746 + {"LightSalmon",  {1.000000 , 0.627451 , 0.478431 }},
747 + {"LightSalmon1",  {1.000000 , 0.627451 , 0.478431 }},
748 + {"LightSalmon2",  {0.933333 , 0.584314 , 0.447059 }},
749 + {"LightSalmon3",  {0.803922 , 0.505882 , 0.384314 }},
750 + {"LightSalmon4",  {0.545098 , 0.341176 , 0.258824 }},
751 + {"LightSeaGreen",  {0.125490 , 0.698039 , 0.666667 }},
752 + {"LightSkyBlue",  {0.529412 , 0.807843 , 0.980392 }},
753 + {"LightSkyBlue1",  {0.690196 , 0.886275 , 1.000000 }},
754 + {"LightSkyBlue2",  {0.643137 , 0.827451 , 0.933333 }},
755 + {"LightSkyBlue3",  {0.552941 , 0.713725 , 0.803922 }},
756 + {"LightSkyBlue4",  {0.376471 , 0.482353 , 0.545098 }},
757 + {"LightSlateBlue",  {0.517647 , 0.439216 , 1.000000 }},
758 + {"LightSlateGray",  {0.466667 , 0.533333 , 0.600000 }},
759 + {"LightSlateGrey",  {0.466667 , 0.533333 , 0.600000 }},
760 + {"LightSteelBlue",  {0.690196 , 0.768627 , 0.870588 }},
761 + {"LightSteelBlue1",  {0.792157 , 0.882353 , 1.000000 }},
762 + {"LightSteelBlue2",  {0.737255 , 0.823529 , 0.933333 }},
763 + {"LightSteelBlue3",  {0.635294 , 0.709804 , 0.803922 }},
764 + {"LightSteelBlue4",  {0.431373 , 0.482353 , 0.545098 }},
765 + {"LightYellow",  {1.000000 , 1.000000 , 0.878431 }},
766 + {"LightYellow1",  {1.000000 , 1.000000 , 0.878431 }},
767 + {"LightYellow2",  {0.933333 , 0.933333 , 0.819608 }},
768 + {"LightYellow3",  {0.803922 , 0.803922 , 0.705882 }},
769 + {"LightYellow4",  {0.545098 , 0.545098 , 0.478431 }},
770 + {"LimeGreen",  {0.196078 , 0.803922 , 0.196078 }},
771 + {"MediumAquamarine",  {0.400000 , 0.803922 , 0.666667 }},
772 + {"MediumBlue",  {0.000000 , 0.000000 , 0.803922 }},
773 + {"MediumOrchid",  {0.729412 , 0.333333 , 0.827451 }},
774 + {"MediumOrchid1",  {0.878431 , 0.400000 , 1.000000 }},
775 + {"MediumOrchid2",  {0.819608 , 0.372549 , 0.933333 }},
776 + {"MediumOrchid3",  {0.705882 , 0.321569 , 0.803922 }},
777 + {"MediumOrchid4",  {0.478431 , 0.215686 , 0.545098 }},
778 + {"MediumPurple",  {0.576471 , 0.439216 , 0.858824 }},
779 + {"MediumPurple1",  {0.670588 , 0.509804 , 1.000000 }},
780 + {"MediumPurple2",  {0.623529 , 0.474510 , 0.933333 }},
781 + {"MediumPurple3",  {0.537255 , 0.407843 , 0.803922 }},
782 + {"MediumPurple4",  {0.364706 , 0.278431 , 0.545098 }},
783 + {"MediumSeaGreen",  {0.235294 , 0.701961 , 0.443137 }},
784 + {"MediumSlateBlue",  {0.482353 , 0.407843 , 0.933333 }},
785 + {"MediumSpringGreen",  {0.000000 , 0.980392 , 0.603922 }},
786 + {"MediumTurquoise",  {0.282353 , 0.819608 , 0.800000 }},
787 + {"MediumVioletRed",  {0.780392 , 0.082353 , 0.521569 }},
788 + {"MidnightBlue",  {0.098039 , 0.098039 , 0.439216 }},
789 + {"MintCream",  {0.960784 , 1.000000 , 0.980392 }},
790 + {"MistyRose",  {1.000000 , 0.894118 , 0.882353 }},
791 + {"MistyRose1",  {1.000000 , 0.894118 , 0.882353 }},
792 + {"MistyRose2",  {0.933333 , 0.835294 , 0.823529 }},
793 + {"MistyRose3",  {0.803922 , 0.717647 , 0.709804 }},
794 + {"MistyRose4",  {0.545098 , 0.490196 , 0.482353 }},
795 + {"NavajoWhite",  {1.000000 , 0.870588 , 0.678431 }},
796 + {"NavajoWhite1",  {1.000000 , 0.870588 , 0.678431 }},
797 + {"NavajoWhite2",  {0.933333 , 0.811765 , 0.631373 }},
798 + {"NavajoWhite3",  {0.803922 , 0.701961 , 0.545098 }},
799 + {"NavajoWhite4",  {0.545098 , 0.474510 , 0.368627 }},
800 + {"NavyBlue",  {0.000000 , 0.000000 , 0.501961 }},
801 + {"OldLace",  {0.992157 , 0.960784 , 0.901961 }},
802 + {"OliveDrab",  {0.419608 , 0.556863 , 0.137255 }},
803 + {"OliveDrab1",  {0.752941 , 1.000000 , 0.243137 }},
804 + {"OliveDrab2",  {0.701961 , 0.933333 , 0.227451 }},
805 + {"OliveDrab3",  {0.603922 , 0.803922 , 0.196078 }},
806 + {"OliveDrab4",  {0.411765 , 0.545098 , 0.133333 }},
807 + {"OrangeRed",  {1.000000 , 0.270588 , 0.000000 }},
808 + {"OrangeRed1",  {1.000000 , 0.270588 , 0.000000 }},
809 + {"OrangeRed2",  {0.933333 , 0.250980 , 0.000000 }},
810 + {"OrangeRed3",  {0.803922 , 0.215686 , 0.000000 }},
811 + {"OrangeRed4",  {0.545098 , 0.145098 , 0.000000 }},
812 + {"PaleGoldenrod",  {0.933333 , 0.909804 , 0.666667 }},
813 + {"PaleGreen",  {0.596078 , 0.984314 , 0.596078 }},
814 + {"PaleGreen1",  {0.603922 , 1.000000 , 0.603922 }},
815 + {"PaleGreen2",  {0.564706 , 0.933333 , 0.564706 }},
816 + {"PaleGreen3",  {0.486275 , 0.803922 , 0.486275 }},
817 + {"PaleGreen4",  {0.329412 , 0.545098 , 0.329412 }},
818 + {"PaleTurquoise",  {0.686275 , 0.933333 , 0.933333 }},
819 + {"PaleTurquoise1",  {0.733333 , 1.000000 , 1.000000 }},
820 + {"PaleTurquoise2",  {0.682353 , 0.933333 , 0.933333 }},
821 + {"PaleTurquoise3",  {0.588235 , 0.803922 , 0.803922 }},
822 + {"PaleTurquoise4",  {0.400000 , 0.545098 , 0.545098 }},
823 + {"PaleVioletRed",  {0.858824 , 0.439216 , 0.576471 }},
824 + {"PaleVioletRed1",  {1.000000 , 0.509804 , 0.670588 }},
825 + {"PaleVioletRed2",  {0.933333 , 0.474510 , 0.623529 }},
826 + {"PaleVioletRed3",  {0.803922 , 0.407843 , 0.537255 }},
827 + {"PaleVioletRed4",  {0.545098 , 0.278431 , 0.364706 }},
828 + {"PapayaWhip",  {1.000000 , 0.937255 , 0.835294 }},
829 + {"PeachPuff",  {1.000000 , 0.854902 , 0.725490 }},
830 + {"PeachPuff1",  {1.000000 , 0.854902 , 0.725490 }},
831 + {"PeachPuff2",  {0.933333 , 0.796078 , 0.678431 }},
832 + {"PeachPuff3",  {0.803922 , 0.686275 , 0.584314 }},
833 + {"PeachPuff4",  {0.545098 , 0.466667 , 0.396078 }},
834 + {"PowderBlue",  {0.690196 , 0.878431 , 0.901961 }},
835 + {"RosyBrown",  {0.737255 , 0.560784 , 0.560784 }},
836 + {"RosyBrown1",  {1.000000 , 0.756863 , 0.756863 }},
837 + {"RosyBrown2",  {0.933333 , 0.705882 , 0.705882 }},
838 + {"RosyBrown3",  {0.803922 , 0.607843 , 0.607843 }},
839 + {"RosyBrown4",  {0.545098 , 0.411765 , 0.411765 }},
840 + {"RoyalBlue",  {0.254902 , 0.411765 , 0.882353 }},
841 + {"RoyalBlue1",  {0.282353 , 0.462745 , 1.000000 }},
842 + {"RoyalBlue2",  {0.262745 , 0.431373 , 0.933333 }},
843 + {"RoyalBlue3",  {0.227451 , 0.372549 , 0.803922 }},
844 + {"RoyalBlue4",  {0.152941 , 0.250980 , 0.545098 }},
845 + {"SaddleBrown",  {0.545098 , 0.270588 , 0.074510 }},
846 + {"SandyBrown",  {0.956863 , 0.643137 , 0.376471 }},
847 + {"SeaGreen",  {0.180392 , 0.545098 , 0.341176 }},
848 + {"SeaGreen1",  {0.329412 , 1.000000 , 0.623529 }},
849 + {"SeaGreen2",  {0.305882 , 0.933333 , 0.580392 }},
850 + {"SeaGreen3",  {0.262745 , 0.803922 , 0.501961 }},
851 + {"SeaGreen4",  {0.180392 , 0.545098 , 0.341176 }},
852 + {"SkyBlue",  {0.529412 , 0.807843 , 0.921569 }},
853 + {"SkyBlue1",  {0.529412 , 0.807843 , 1.000000 }},
854 + {"SkyBlue2",  {0.494118 , 0.752941 , 0.933333 }},
855 + {"SkyBlue3",  {0.423529 , 0.650980 , 0.803922 }},
856 + {"SkyBlue4",  {0.290196 , 0.439216 , 0.545098 }},
857 + {"SlateBlue",  {0.415686 , 0.352941 , 0.803922 }},
858 + {"SlateBlue1",  {0.513725 , 0.435294 , 1.000000 }},
859 + {"SlateBlue2",  {0.478431 , 0.403922 , 0.933333 }},
860 + {"SlateBlue3",  {0.411765 , 0.349020 , 0.803922 }},
861 + {"SlateBlue4",  {0.278431 , 0.235294 , 0.545098 }},
862 + {"SlateGray",  {0.439216 , 0.501961 , 0.564706 }},
863 + {"SlateGray1",  {0.776471 , 0.886275 , 1.000000 }},
864 + {"SlateGray2",  {0.725490 , 0.827451 , 0.933333 }},
865 + {"SlateGray3",  {0.623529 , 0.713725 , 0.803922 }},
866 + {"SlateGray4",  {0.423529 , 0.482353 , 0.545098 }},
867 + {"SlateGrey",  {0.439216 , 0.501961 , 0.564706 }},
868 + {"SpringGreen",  {0.000000 , 1.000000 , 0.498039 }},
869 + {"SpringGreen1",  {0.000000 , 1.000000 , 0.498039 }},
870 + {"SpringGreen2",  {0.000000 , 0.933333 , 0.462745 }},
871 + {"SpringGreen3",  {0.000000 , 0.803922 , 0.400000 }},
872 + {"SpringGreen4",  {0.000000 , 0.545098 , 0.270588 }},
873 + {"SteelBlue",  {0.274510 , 0.509804 , 0.705882 }},
874 + {"SteelBlue1",  {0.388235 , 0.721569 , 1.000000 }},
875 + {"SteelBlue2",  {0.360784 , 0.674510 , 0.933333 }},
876 + {"SteelBlue3",  {0.309804 , 0.580392 , 0.803922 }},
877 + {"SteelBlue4",  {0.211765 , 0.392157 , 0.545098 }},
878 + {"VioletRed",  {0.815686 , 0.125490 , 0.564706 }},
879 + {"VioletRed1",  {1.000000 , 0.243137 , 0.588235 }},
880 + {"VioletRed2",  {0.933333 , 0.227451 , 0.549020 }},
881 + {"VioletRed3",  {0.803922 , 0.196078 , 0.470588 }},
882 + {"VioletRed4",  {0.545098 , 0.133333 , 0.321569 }},
883 + {"WhiteSmoke",  {0.960784 , 0.960784 , 0.960784 }},
884 + {"YellowGreen",  {0.603922 , 0.803922 , 0.196078 }},
885 + {"alice_blue",  {0.941176 , 0.972549 , 1.000000 }},
886 + {"antique_white",  {0.980392 , 0.921569 , 0.843137 }},
887 + {"aquamarine",  {0.498039 , 1.000000 , 0.831373 }},
888 + {"aquamarine1",  {0.498039 , 1.000000 , 0.831373 }},
889 + {"aquamarine2",  {0.462745 , 0.933333 , 0.776471 }},
890 + {"aquamarine3",  {0.400000 , 0.803922 , 0.666667 }},
891 + {"aquamarine4",  {0.270588 , 0.545098 , 0.454902 }},
892 + {"azure",  {0.941176 , 1.000000 , 1.000000 }},
893 + {"azure1",  {0.941176 , 1.000000 , 1.000000 }},
894 + {"azure2",  {0.878431 , 0.933333 , 0.933333 }},
895 + {"azure3",  {0.756863 , 0.803922 , 0.803922 }},
896 + {"azure4",  {0.513725 , 0.545098 , 0.545098 }},
897 + {"beige",  {0.960784 , 0.960784 , 0.862745 }},
898 + {"bisque",  {1.000000 , 0.894118 , 0.768627 }},
899 + {"bisque1",  {1.000000 , 0.894118 , 0.768627 }},
900 + {"bisque2",  {0.933333 , 0.835294 , 0.717647 }},
901 + {"bisque3",  {0.803922 , 0.717647 , 0.619608 }},
902 + {"bisque4",  {0.545098 , 0.490196 , 0.419608 }},
903 + {"black",  {0.000000 , 0.000000 , 0.000000 }},
904 + {"blanched_almond",  {1.000000 , 0.921569 , 0.803922 }},
905 + {"blue",  {0.000000 , 0.000000 , 1.000000 }},
906 + {"blue1",  {0.000000 , 0.000000 , 1.000000 }},
907 + {"blue2",  {0.000000 , 0.000000 , 0.933333 }},
908 + {"blue3",  {0.000000 , 0.000000 , 0.803922 }},
909 + {"blue4",  {0.000000 , 0.000000 , 0.545098 }},
910 + {"blue_violet",  {0.541176 , 0.168627 , 0.886275 }},
911 + {"brown",  {0.647059 , 0.164706 , 0.164706 }},
912 + {"brown1",  {1.000000 , 0.250980 , 0.250980 }},
913 + {"brown2",  {0.933333 , 0.231373 , 0.231373 }},
914 + {"brown3",  {0.803922 , 0.200000 , 0.200000 }},
915 + {"brown4",  {0.545098 , 0.137255 , 0.137255 }},
916 + {"burlywood",  {0.870588 , 0.721569 , 0.529412 }},
917 + {"burlywood1",  {1.000000 , 0.827451 , 0.607843 }},
918 + {"burlywood2",  {0.933333 , 0.772549 , 0.568627 }},
919 + {"burlywood3",  {0.803922 , 0.666667 , 0.490196 }},
920 + {"burlywood4",  {0.545098 , 0.450980 , 0.333333 }},
921 + {"cadet_blue",  {0.372549 , 0.619608 , 0.627451 }},
922 + {"chartreuse",  {0.498039 , 1.000000 , 0.000000 }},
923 + {"chartreuse1",  {0.498039 , 1.000000 , 0.000000 }},
924 + {"chartreuse2",  {0.462745 , 0.933333 , 0.000000 }},
925 + {"chartreuse3",  {0.400000 , 0.803922 , 0.000000 }},
926 + {"chartreuse4",  {0.270588 , 0.545098 , 0.000000 }},
927 + {"chocolate",  {0.823529 , 0.411765 , 0.117647 }},
928 + {"chocolate1",  {1.000000 , 0.498039 , 0.141176 }},
929 + {"chocolate2",  {0.933333 , 0.462745 , 0.129412 }},
930 + {"chocolate3",  {0.803922 , 0.400000 , 0.113725 }},
931 + {"chocolate4",  {0.545098 , 0.270588 , 0.074510 }},
932 + {"coral",  {1.000000 , 0.498039 , 0.313725 }},
933 + {"coral1",  {1.000000 , 0.447059 , 0.337255 }},
934 + {"coral2",  {0.933333 , 0.415686 , 0.313725 }},
935 + {"coral3",  {0.803922 , 0.356863 , 0.270588 }},
936 + {"coral4",  {0.545098 , 0.243137 , 0.184314 }},
937 + {"cornflower_blue",  {0.392157 , 0.584314 , 0.929412 }},
938 + {"cornsilk",  {1.000000 , 0.972549 , 0.862745 }},
939 + {"cornsilk1",  {1.000000 , 0.972549 , 0.862745 }},
940 + {"cornsilk2",  {0.933333 , 0.909804 , 0.803922 }},
941 + {"cornsilk3",  {0.803922 , 0.784314 , 0.694118 }},
942 + {"cornsilk4",  {0.545098 , 0.533333 , 0.470588 }},
943 + {"cyan",  {0.000000 , 1.000000 , 1.000000 }},
944 + {"cyan1",  {0.000000 , 1.000000 , 1.000000 }},
945 + {"cyan2",  {0.000000 , 0.933333 , 0.933333 }},
946 + {"cyan3",  {0.000000 , 0.803922 , 0.803922 }},
947 + {"cyan4",  {0.000000 , 0.545098 , 0.545098 }},
948 + {"dark_goldenrod",  {0.721569 , 0.525490 , 0.043137 }},
949 + {"dark_green",  {0.000000 , 0.392157 , 0.000000 }},
950 + {"dark_khaki",  {0.741176 , 0.717647 , 0.419608 }},
951 + {"dark_olive_green",  {0.333333 , 0.419608 , 0.184314 }},
952 + {"dark_orange",  {1.000000 , 0.549020 , 0.000000 }},
953 + {"dark_orchid",  {0.600000 , 0.196078 , 0.800000 }},
954 + {"dark_salmon",  {0.913725 , 0.588235 , 0.478431 }},
955 + {"dark_sea_green",  {0.560784 , 0.737255 , 0.560784 }},
956 + {"dark_slate_blue",  {0.282353 , 0.239216 , 0.545098 }},
957 + {"dark_slate_gray",  {0.184314 , 0.309804 , 0.309804 }},
958 + {"dark_slate_grey",  {0.184314 , 0.309804 , 0.309804 }},
959 + {"dark_turquoise",  {0.000000 , 0.807843 , 0.819608 }},
960 + {"dark_violet",  {0.580392 , 0.000000 , 0.827451 }},
961 + {"deep_pink",  {1.000000 , 0.078431 , 0.576471 }},
962 + {"deep_sky_blue",  {0.000000 , 0.749020 , 1.000000 }},
963 + {"dim_gray",  {0.411765 , 0.411765 , 0.411765 }},
964 + {"dim_grey",  {0.411765 , 0.411765 , 0.411765 }},
965 + {"dodger_blue",  {0.117647 , 0.564706 , 1.000000 }},
966 + {"firebrick",  {0.698039 , 0.133333 , 0.133333 }},
967 + {"firebrick1",  {1.000000 , 0.188235 , 0.188235 }},
968 + {"firebrick2",  {0.933333 , 0.172549 , 0.172549 }},
969 + {"firebrick3",  {0.803922 , 0.149020 , 0.149020 }},
970 + {"firebrick4",  {0.545098 , 0.101961 , 0.101961 }},
971 + {"floral_white",  {1.000000 , 0.980392 , 0.941176 }},
972 + {"forest_green",  {0.133333 , 0.545098 , 0.133333 }},
973 + {"gainsboro",  {0.862745 , 0.862745 , 0.862745 }},
974 + {"ghost_white",  {0.972549 , 0.972549 , 1.000000 }},
975 + {"gold",  {1.000000 , 0.843137 , 0.000000 }},
976 + {"gold1",  {1.000000 , 0.843137 , 0.000000 }},
977 + {"gold2",  {0.933333 , 0.788235 , 0.000000 }},
978 + {"gold3",  {0.803922 , 0.678431 , 0.000000 }},
979 + {"gold4",  {0.545098 , 0.458824 , 0.000000 }},
980 + {"goldenrod",  {0.854902 , 0.647059 , 0.125490 }},
981 + {"goldenrod1",  {1.000000 , 0.756863 , 0.145098 }},
982 + {"goldenrod2",  {0.933333 , 0.705882 , 0.133333 }},
983 + {"goldenrod3",  {0.803922 , 0.607843 , 0.113725 }},
984 + {"goldenrod4",  {0.545098 , 0.411765 , 0.078431 }},
985 + {"gray",  {0.752941 , 0.752941 , 0.752941 }},
986 + {"gray0",  {0.000000 , 0.000000 , 0.000000 }},
987 + {"gray1",  {0.011765 , 0.011765 , 0.011765 }},
988 + {"gray10",  {0.101961 , 0.101961 , 0.101961 }},
989 + {"gray100",  {1.000000 , 1.000000 , 1.000000 }},
990 + {"gray11",  {0.109804 , 0.109804 , 0.109804 }},
991 + {"gray12",  {0.121569 , 0.121569 , 0.121569 }},
992 + {"gray13",  {0.129412 , 0.129412 , 0.129412 }},
993 + {"gray14",  {0.141176 , 0.141176 , 0.141176 }},
994 + {"gray15",  {0.149020 , 0.149020 , 0.149020 }},
995 + {"gray16",  {0.160784 , 0.160784 , 0.160784 }},
996 + {"gray17",  {0.168627 , 0.168627 , 0.168627 }},
997 + {"gray18",  {0.180392 , 0.180392 , 0.180392 }},
998 + {"gray19",  {0.188235 , 0.188235 , 0.188235 }},
999 + {"gray2",  {0.019608 , 0.019608 , 0.019608 }},
1000 + {"gray20",  {0.200000 , 0.200000 , 0.200000 }},
1001 + {"gray21",  {0.211765 , 0.211765 , 0.211765 }},
1002 + {"gray22",  {0.219608 , 0.219608 , 0.219608 }},
1003 + {"gray23",  {0.231373 , 0.231373 , 0.231373 }},
1004 + {"gray24",  {0.239216 , 0.239216 , 0.239216 }},
1005 + {"gray25",  {0.250980 , 0.250980 , 0.250980 }},
1006 + {"gray26",  {0.258824 , 0.258824 , 0.258824 }},
1007 + {"gray27",  {0.270588 , 0.270588 , 0.270588 }},
1008 + {"gray28",  {0.278431 , 0.278431 , 0.278431 }},
1009 + {"gray29",  {0.290196 , 0.290196 , 0.290196 }},
1010 + {"gray3",  {0.031373 , 0.031373 , 0.031373 }},
1011 + {"gray30",  {0.301961 , 0.301961 , 0.301961 }},
1012 + {"gray31",  {0.309804 , 0.309804 , 0.309804 }},
1013 + {"gray32",  {0.321569 , 0.321569 , 0.321569 }},
1014 + {"gray33",  {0.329412 , 0.329412 , 0.329412 }},
1015 + {"gray34",  {0.341176 , 0.341176 , 0.341176 }},
1016 + {"gray35",  {0.349020 , 0.349020 , 0.349020 }},
1017 + {"gray36",  {0.360784 , 0.360784 , 0.360784 }},
1018 + {"gray37",  {0.368627 , 0.368627 , 0.368627 }},
1019 + {"gray38",  {0.380392 , 0.380392 , 0.380392 }},
1020 + {"gray39",  {0.388235 , 0.388235 , 0.388235 }},
1021 + {"gray4",  {0.039216 , 0.039216 , 0.039216 }},
1022 + {"gray40",  {0.400000 , 0.400000 , 0.400000 }},
1023 + {"gray41",  {0.411765 , 0.411765 , 0.411765 }},
1024 + {"gray42",  {0.419608 , 0.419608 , 0.419608 }},
1025 + {"gray43",  {0.431373 , 0.431373 , 0.431373 }},
1026 + {"gray44",  {0.439216 , 0.439216 , 0.439216 }},
1027 + {"gray45",  {0.450980 , 0.450980 , 0.450980 }},
1028 + {"gray46",  {0.458824 , 0.458824 , 0.458824 }},
1029 + {"gray47",  {0.470588 , 0.470588 , 0.470588 }},
1030 + {"gray48",  {0.478431 , 0.478431 , 0.478431 }},
1031 + {"gray49",  {0.490196 , 0.490196 , 0.490196 }},
1032 + {"gray5",  {0.050980 , 0.050980 , 0.050980 }},
1033 + {"gray50",  {0.498039 , 0.498039 , 0.498039 }},
1034 + {"gray51",  {0.509804 , 0.509804 , 0.509804 }},
1035 + {"gray52",  {0.521569 , 0.521569 , 0.521569 }},
1036 + {"gray53",  {0.529412 , 0.529412 , 0.529412 }},
1037 + {"gray54",  {0.541176 , 0.541176 , 0.541176 }},
1038 + {"gray55",  {0.549020 , 0.549020 , 0.549020 }},
1039 + {"gray56",  {0.560784 , 0.560784 , 0.560784 }},
1040 + {"gray57",  {0.568627 , 0.568627 , 0.568627 }},
1041 + {"gray58",  {0.580392 , 0.580392 , 0.580392 }},
1042 + {"gray59",  {0.588235 , 0.588235 , 0.588235 }},
1043 + {"gray6",  {0.058824 , 0.058824 , 0.058824 }},
1044 + {"gray60",  {0.600000 , 0.600000 , 0.600000 }},
1045 + {"gray61",  {0.611765 , 0.611765 , 0.611765 }},
1046 + {"gray62",  {0.619608 , 0.619608 , 0.619608 }},
1047 + {"gray63",  {0.631373 , 0.631373 , 0.631373 }},
1048 + {"gray64",  {0.639216 , 0.639216 , 0.639216 }},
1049 + {"gray65",  {0.650980 , 0.650980 , 0.650980 }},
1050 + {"gray66",  {0.658824 , 0.658824 , 0.658824 }},
1051 + {"gray67",  {0.670588 , 0.670588 , 0.670588 }},
1052 + {"gray68",  {0.678431 , 0.678431 , 0.678431 }},
1053 + {"gray69",  {0.690196 , 0.690196 , 0.690196 }},
1054 + {"gray7",  {0.070588 , 0.070588 , 0.070588 }},
1055 + {"gray70",  {0.701961 , 0.701961 , 0.701961 }},
1056 + {"gray71",  {0.709804 , 0.709804 , 0.709804 }},
1057 + {"gray72",  {0.721569 , 0.721569 , 0.721569 }},
1058 + {"gray73",  {0.729412 , 0.729412 , 0.729412 }},
1059 + {"gray74",  {0.741176 , 0.741176 , 0.741176 }},
1060 + {"gray75",  {0.749020 , 0.749020 , 0.749020 }},
1061 + {"gray76",  {0.760784 , 0.760784 , 0.760784 }},
1062 + {"gray77",  {0.768627 , 0.768627 , 0.768627 }},
1063 + {"gray78",  {0.780392 , 0.780392 , 0.780392 }},
1064 + {"gray79",  {0.788235 , 0.788235 , 0.788235 }},
1065 + {"gray8",  {0.078431 , 0.078431 , 0.078431 }},
1066 + {"gray80",  {0.800000 , 0.800000 , 0.800000 }},
1067 + {"gray81",  {0.811765 , 0.811765 , 0.811765 }},
1068 + {"gray82",  {0.819608 , 0.819608 , 0.819608 }},
1069 + {"gray83",  {0.831373 , 0.831373 , 0.831373 }},
1070 + {"gray84",  {0.839216 , 0.839216 , 0.839216 }},
1071 + {"gray85",  {0.850980 , 0.850980 , 0.850980 }},
1072 + {"gray86",  {0.858824 , 0.858824 , 0.858824 }},
1073 + {"gray87",  {0.870588 , 0.870588 , 0.870588 }},
1074 + {"gray88",  {0.878431 , 0.878431 , 0.878431 }},
1075 + {"gray89",  {0.890196 , 0.890196 , 0.890196 }},
1076 + {"gray9",  {0.090196 , 0.090196 , 0.090196 }},
1077 + {"gray90",  {0.898039 , 0.898039 , 0.898039 }},
1078 + {"gray91",  {0.909804 , 0.909804 , 0.909804 }},
1079 + {"gray92",  {0.921569 , 0.921569 , 0.921569 }},
1080 + {"gray93",  {0.929412 , 0.929412 , 0.929412 }},
1081 + {"gray94",  {0.941176 , 0.941176 , 0.941176 }},
1082 + {"gray95",  {0.949020 , 0.949020 , 0.949020 }},
1083 + {"gray96",  {0.960784 , 0.960784 , 0.960784 }},
1084 + {"gray97",  {0.968627 , 0.968627 , 0.968627 }},
1085 + {"gray98",  {0.980392 , 0.980392 , 0.980392 }},
1086 + {"gray99",  {0.988235 , 0.988235 , 0.988235 }},
1087 + {"green",  {0.000000 , 1.000000 , 0.000000 }},
1088 + {"green1",  {0.000000 , 1.000000 , 0.000000 }},
1089 + {"green2",  {0.000000 , 0.933333 , 0.000000 }},
1090 + {"green3",  {0.000000 , 0.803922 , 0.000000 }},
1091 + {"green4",  {0.000000 , 0.545098 , 0.000000 }},
1092 + {"green_yellow",  {0.678431 , 1.000000 , 0.184314 }},
1093 + {"grey",  {0.752941 , 0.752941 , 0.752941 }},
1094 + {"grey0",  {0.000000 , 0.000000 , 0.000000 }},
1095 + {"grey1",  {0.011765 , 0.011765 , 0.011765 }},
1096 + {"grey10",  {0.101961 , 0.101961 , 0.101961 }},
1097 + {"grey100",  {1.000000 , 1.000000 , 1.000000 }},
1098 + {"grey11",  {0.109804 , 0.109804 , 0.109804 }},
1099 + {"grey12",  {0.121569 , 0.121569 , 0.121569 }},
1100 + {"grey13",  {0.129412 , 0.129412 , 0.129412 }},
1101 + {"grey14",  {0.141176 , 0.141176 , 0.141176 }},
1102 + {"grey15",  {0.149020 , 0.149020 , 0.149020 }},
1103 + {"grey16",  {0.160784 , 0.160784 , 0.160784 }},
1104 + {"grey17",  {0.168627 , 0.168627 , 0.168627 }},
1105 + {"grey18",  {0.180392 , 0.180392 , 0.180392 }},
1106 + {"grey19",  {0.188235 , 0.188235 , 0.188235 }},
1107 + {"grey2",  {0.019608 , 0.019608 , 0.019608 }},
1108 + {"grey20",  {0.200000 , 0.200000 , 0.200000 }},
1109 + {"grey21",  {0.211765 , 0.211765 , 0.211765 }},
1110 + {"grey22",  {0.219608 , 0.219608 , 0.219608 }},
1111 + {"grey23",  {0.231373 , 0.231373 , 0.231373 }},
1112 + {"grey24",  {0.239216 , 0.239216 , 0.239216 }},
1113 + {"grey25",  {0.250980 , 0.250980 , 0.250980 }},
1114 + {"grey26",  {0.258824 , 0.258824 , 0.258824 }},
1115 + {"grey27",  {0.270588 , 0.270588 , 0.270588 }},
1116 + {"grey28",  {0.278431 , 0.278431 , 0.278431 }},
1117 + {"grey29",  {0.290196 , 0.290196 , 0.290196 }},
1118 + {"grey3",  {0.031373 , 0.031373 , 0.031373 }},
1119 + {"grey30",  {0.301961 , 0.301961 , 0.301961 }},
1120 + {"grey31",  {0.309804 , 0.309804 , 0.309804 }},
1121 + {"grey32",  {0.321569 , 0.321569 , 0.321569 }},
1122 + {"grey33",  {0.329412 , 0.329412 , 0.329412 }},
1123 + {"grey34",  {0.341176 , 0.341176 , 0.341176 }},
1124 + {"grey35",  {0.349020 , 0.349020 , 0.349020 }},
1125 + {"grey36",  {0.360784 , 0.360784 , 0.360784 }},
1126 + {"grey37",  {0.368627 , 0.368627 , 0.368627 }},
1127 + {"grey38",  {0.380392 , 0.380392 , 0.380392 }},
1128 + {"grey39",  {0.388235 , 0.388235 , 0.388235 }},
1129 + {"grey4",  {0.039216 , 0.039216 , 0.039216 }},
1130 + {"grey40",  {0.400000 , 0.400000 , 0.400000 }},
1131 + {"grey41",  {0.411765 , 0.411765 , 0.411765 }},
1132 + {"grey42",  {0.419608 , 0.419608 , 0.419608 }},
1133 + {"grey43",  {0.431373 , 0.431373 , 0.431373 }},
1134 + {"grey44",  {0.439216 , 0.439216 , 0.439216 }},
1135 + {"grey45",  {0.450980 , 0.450980 , 0.450980 }},
1136 + {"grey46",  {0.458824 , 0.458824 , 0.458824 }},
1137 + {"grey47",  {0.470588 , 0.470588 , 0.470588 }},
1138 + {"grey48",  {0.478431 , 0.478431 , 0.478431 }},
1139 + {"grey49",  {0.490196 , 0.490196 , 0.490196 }},
1140 + {"grey5",  {0.050980 , 0.050980 , 0.050980 }},
1141 + {"grey50",  {0.498039 , 0.498039 , 0.498039 }},
1142 + {"grey51",  {0.509804 , 0.509804 , 0.509804 }},
1143 + {"grey52",  {0.521569 , 0.521569 , 0.521569 }},
1144 + {"grey53",  {0.529412 , 0.529412 , 0.529412 }},
1145 + {"grey54",  {0.541176 , 0.541176 , 0.541176 }},
1146 + {"grey55",  {0.549020 , 0.549020 , 0.549020 }},
1147 + {"grey56",  {0.560784 , 0.560784 , 0.560784 }},
1148 + {"grey57",  {0.568627 , 0.568627 , 0.568627 }},
1149 + {"grey58",  {0.580392 , 0.580392 , 0.580392 }},
1150 + {"grey59",  {0.588235 , 0.588235 , 0.588235 }},
1151 + {"grey6",  {0.058824 , 0.058824 , 0.058824 }},
1152 + {"grey60",  {0.600000 , 0.600000 , 0.600000 }},
1153 + {"grey61",  {0.611765 , 0.611765 , 0.611765 }},
1154 + {"grey62",  {0.619608 , 0.619608 , 0.619608 }},
1155 + {"grey63",  {0.631373 , 0.631373 , 0.631373 }},
1156 + {"grey64",  {0.639216 , 0.639216 , 0.639216 }},
1157 + {"grey65",  {0.650980 , 0.650980 , 0.650980 }},
1158 + {"grey66",  {0.658824 , 0.658824 , 0.658824 }},
1159 + {"grey67",  {0.670588 , 0.670588 , 0.670588 }},
1160 + {"grey68",  {0.678431 , 0.678431 , 0.678431 }},
1161 + {"grey69",  {0.690196 , 0.690196 , 0.690196 }},
1162 + {"grey7",  {0.070588 , 0.070588 , 0.070588 }},
1163 + {"grey70",  {0.701961 , 0.701961 , 0.701961 }},
1164 + {"grey71",  {0.709804 , 0.709804 , 0.709804 }},
1165 + {"grey72",  {0.721569 , 0.721569 , 0.721569 }},
1166 + {"grey73",  {0.729412 , 0.729412 , 0.729412 }},
1167 + {"grey74",  {0.741176 , 0.741176 , 0.741176 }},
1168 + {"grey75",  {0.749020 , 0.749020 , 0.749020 }},
1169 + {"grey76",  {0.760784 , 0.760784 , 0.760784 }},
1170 + {"grey77",  {0.768627 , 0.768627 , 0.768627 }},
1171 + {"grey78",  {0.780392 , 0.780392 , 0.780392 }},
1172 + {"grey79",  {0.788235 , 0.788235 , 0.788235 }},
1173 + {"grey8",  {0.078431 , 0.078431 , 0.078431 }},
1174 + {"grey80",  {0.800000 , 0.800000 , 0.800000 }},
1175 + {"grey81",  {0.811765 , 0.811765 , 0.811765 }},
1176 + {"grey82",  {0.819608 , 0.819608 , 0.819608 }},
1177 + {"grey83",  {0.831373 , 0.831373 , 0.831373 }},
1178 + {"grey84",  {0.839216 , 0.839216 , 0.839216 }},
1179 + {"grey85",  {0.850980 , 0.850980 , 0.850980 }},
1180 + {"grey86",  {0.858824 , 0.858824 , 0.858824 }},
1181 + {"grey87",  {0.870588 , 0.870588 , 0.870588 }},
1182 + {"grey88",  {0.878431 , 0.878431 , 0.878431 }},
1183 + {"grey89",  {0.890196 , 0.890196 , 0.890196 }},
1184 + {"grey9",  {0.090196 , 0.090196 , 0.090196 }},
1185 + {"grey90",  {0.898039 , 0.898039 , 0.898039 }},
1186 + {"grey91",  {0.909804 , 0.909804 , 0.909804 }},
1187 + {"grey92",  {0.921569 , 0.921569 , 0.921569 }},
1188 + {"grey93",  {0.929412 , 0.929412 , 0.929412 }},
1189 + {"grey94",  {0.941176 , 0.941176 , 0.941176 }},
1190 + {"grey95",  {0.949020 , 0.949020 , 0.949020 }},
1191 + {"grey96",  {0.960784 , 0.960784 , 0.960784 }},
1192 + {"grey97",  {0.968627 , 0.968627 , 0.968627 }},
1193 + {"grey98",  {0.980392 , 0.980392 , 0.980392 }},
1194 + {"grey99",  {0.988235 , 0.988235 , 0.988235 }},
1195 + {"honeydew",  {0.941176 , 1.000000 , 0.941176 }},
1196 + {"honeydew1",  {0.941176 , 1.000000 , 0.941176 }},
1197 + {"honeydew2",  {0.878431 , 0.933333 , 0.878431 }},
1198 + {"honeydew3",  {0.756863 , 0.803922 , 0.756863 }},
1199 + {"honeydew4",  {0.513725 , 0.545098 , 0.513725 }},
1200 + {"hot_pink",  {1.000000 , 0.411765 , 0.705882 }},
1201 + {"indian_red",  {0.803922 , 0.360784 , 0.360784 }},
1202 + {"ivory",  {1.000000 , 1.000000 , 0.941176 }},
1203 + {"ivory1",  {1.000000 , 1.000000 , 0.941176 }},
1204 + {"ivory2",  {0.933333 , 0.933333 , 0.878431 }},
1205 + {"ivory3",  {0.803922 , 0.803922 , 0.756863 }},
1206 + {"ivory4",  {0.545098 , 0.545098 , 0.513725 }},
1207 + {"khaki",  {0.941176 , 0.901961 , 0.549020 }},
1208 + {"khaki1",  {1.000000 , 0.964706 , 0.560784 }},
1209 + {"khaki2",  {0.933333 , 0.901961 , 0.521569 }},
1210 + {"khaki3",  {0.803922 , 0.776471 , 0.450980 }},
1211 + {"khaki4",  {0.545098 , 0.525490 , 0.305882 }},
1212 + {"lavender",  {0.901961 , 0.901961 , 0.980392 }},
1213 + {"lavender_blush",  {1.000000 , 0.941176 , 0.960784 }},
1214 + {"lawn_green",  {0.486275 , 0.988235 , 0.000000 }},
1215 + {"lemon_chiffon",  {1.000000 , 0.980392 , 0.803922 }},
1216 + {"light_blue",  {0.678431 , 0.847059 , 0.901961 }},
1217 + {"light_coral",  {0.941176 , 0.501961 , 0.501961 }},
1218 + {"light_cyan",  {0.878431 , 1.000000 , 1.000000 }},
1219 + {"light_goldenrod",  {0.933333 , 0.866667 , 0.509804 }},
1220 + {"light_goldenrod_yellow",  {0.980392 , 0.980392 , 0.823529 }},
1221 + {"light_gray",  {0.827451 , 0.827451 , 0.827451 }},
1222 + {"light_grey",  {0.827451 , 0.827451 , 0.827451 }},
1223 + {"light_pink",  {1.000000 , 0.713725 , 0.756863 }},
1224 + {"light_salmon",  {1.000000 , 0.627451 , 0.478431 }},
1225 + {"light_sea_green",  {0.125490 , 0.698039 , 0.666667 }},
1226 + {"light_sky_blue",  {0.529412 , 0.807843 , 0.980392 }},
1227 + {"light_slate_blue",  {0.517647 , 0.439216 , 1.000000 }},
1228 + {"light_slate_gray",  {0.466667 , 0.533333 , 0.600000 }},
1229 + {"light_slate_grey",  {0.466667 , 0.533333 , 0.600000 }},
1230 + {"light_steel_blue",  {0.690196 , 0.768627 , 0.870588 }},
1231 + {"light_yellow",  {1.000000 , 1.000000 , 0.878431 }},
1232 + {"lime_green",  {0.196078 , 0.803922 , 0.196078 }},
1233 + {"linen",  {0.980392 , 0.941176 , 0.901961 }},
1234 + {"magenta",  {1.000000 , 0.000000 , 1.000000 }},
1235 + {"magenta1",  {1.000000 , 0.000000 , 1.000000 }},
1236 + {"magenta2",  {0.933333 , 0.000000 , 0.933333 }},
1237 + {"magenta3",  {0.803922 , 0.000000 , 0.803922 }},
1238 + {"magenta4",  {0.545098 , 0.000000 , 0.545098 }},
1239 + {"maroon",  {0.690196 , 0.188235 , 0.376471 }},
1240 + {"maroon1",  {1.000000 , 0.203922 , 0.701961 }},
1241 + {"maroon2",  {0.933333 , 0.188235 , 0.654902 }},
1242 + {"maroon3",  {0.803922 , 0.160784 , 0.564706 }},
1243 + {"maroon4",  {0.545098 , 0.109804 , 0.384314 }},
1244 + {"medium_aquamarine",  {0.400000 , 0.803922 , 0.666667 }},
1245 + {"medium_blue",  {0.000000 , 0.000000 , 0.803922 }},
1246 + {"medium_orchid",  {0.729412 , 0.333333 , 0.827451 }},
1247 + {"medium_purple",  {0.576471 , 0.439216 , 0.858824 }},
1248 + {"medium_sea_green",  {0.235294 , 0.701961 , 0.443137 }},
1249 + {"medium_slate_blue",  {0.482353 , 0.407843 , 0.933333 }},
1250 + {"medium_spring_green",  {0.000000 , 0.980392 , 0.603922 }},
1251 + {"medium_turquoise",  {0.282353 , 0.819608 , 0.800000 }},
1252 + {"medium_violet_red",  {0.780392 , 0.082353 , 0.521569 }},
1253 + {"midnight_blue",  {0.098039 , 0.098039 , 0.439216 }},
1254 + {"mint_cream",  {0.960784 , 1.000000 , 0.980392 }},
1255 + {"misty_rose",  {1.000000 , 0.894118 , 0.882353 }},
1256 + {"moccasin",  {1.000000 , 0.894118 , 0.709804 }},
1257 + {"navajo_white",  {1.000000 , 0.870588 , 0.678431 }},
1258 + {"navy",  {0.000000 , 0.000000 , 0.501961 }},
1259 + {"navy_blue",  {0.000000 , 0.000000 , 0.501961 }},
1260 + {"old_lace",  {0.992157 , 0.960784 , 0.901961 }},
1261 + {"olive_drab",  {0.419608 , 0.556863 , 0.137255 }},
1262 + {"orange",  {1.000000 , 0.647059 , 0.000000 }},
1263 + {"orange1",  {1.000000 , 0.647059 , 0.000000 }},
1264 + {"orange2",  {0.933333 , 0.603922 , 0.000000 }},
1265 + {"orange3",  {0.803922 , 0.521569 , 0.000000 }},
1266 + {"orange4",  {0.545098 , 0.352941 , 0.000000 }},
1267 + {"orange_red",  {1.000000 , 0.270588 , 0.000000 }},
1268 + {"orchid",  {0.854902 , 0.439216 , 0.839216 }},
1269 + {"orchid1",  {1.000000 , 0.513725 , 0.980392 }},
1270 + {"orchid2",  {0.933333 , 0.478431 , 0.913725 }},
1271 + {"orchid3",  {0.803922 , 0.411765 , 0.788235 }},
1272 + {"orchid4",  {0.545098 , 0.278431 , 0.537255 }},
1273 + {"pale_goldenrod",  {0.933333 , 0.909804 , 0.666667 }},
1274 + {"pale_green",  {0.596078 , 0.984314 , 0.596078 }},
1275 + {"pale_turquoise",  {0.686275 , 0.933333 , 0.933333 }},
1276 + {"pale_violet_red",  {0.858824 , 0.439216 , 0.576471 }},
1277 + {"papaya_whip",  {1.000000 , 0.937255 , 0.835294 }},
1278 + {"peach_puff",  {1.000000 , 0.854902 , 0.725490 }},
1279 + {"peru",  {0.803922 , 0.521569 , 0.247059 }},
1280 + {"pink",  {1.000000 , 0.752941 , 0.796078 }},
1281 + {"pink1",  {1.000000 , 0.709804 , 0.772549 }},
1282 + {"pink2",  {0.933333 , 0.662745 , 0.721569 }},
1283 + {"pink3",  {0.803922 , 0.568627 , 0.619608 }},
1284 + {"pink4",  {0.545098 , 0.388235 , 0.423529 }},
1285 + {"plum",  {0.866667 , 0.627451 , 0.866667 }},
1286 + {"plum1",  {1.000000 , 0.733333 , 1.000000 }},
1287 + {"plum2",  {0.933333 , 0.682353 , 0.933333 }},
1288 + {"plum3",  {0.803922 , 0.588235 , 0.803922 }},
1289 + {"plum4",  {0.545098 , 0.400000 , 0.545098 }},
1290 + {"powder_blue",  {0.690196 , 0.878431 , 0.901961 }},
1291 + {"purple",  {0.627451 , 0.125490 , 0.941176 }},
1292 + {"purple1",  {0.607843 , 0.188235 , 1.000000 }},
1293 + {"purple2",  {0.568627 , 0.172549 , 0.933333 }},
1294 + {"purple3",  {0.490196 , 0.149020 , 0.803922 }},
1295 + {"purple4",  {0.333333 , 0.101961 , 0.545098 }},
1296 + {"red",  {1.000000 , 0.000000 , 0.000000 }},
1297 + {"red1",  {1.000000 , 0.000000 , 0.000000 }},
1298 + {"red2",  {0.933333 , 0.000000 , 0.000000 }},
1299 + {"red3",  {0.803922 , 0.000000 , 0.000000 }},
1300 + {"red4",  {0.545098 , 0.000000 , 0.000000 }},
1301 + {"rosy_brown",  {0.737255 , 0.560784 , 0.560784 }},
1302 + {"royal_blue",  {0.254902 , 0.411765 , 0.882353 }},
1303 + {"saddle_brown",  {0.545098 , 0.270588 , 0.074510 }},
1304 + {"salmon",  {0.980392 , 0.501961 , 0.447059 }},
1305 + {"salmon1",  {1.000000 , 0.549020 , 0.411765 }},
1306 + {"salmon2",  {0.933333 , 0.509804 , 0.384314 }},
1307 + {"salmon3",  {0.803922 , 0.439216 , 0.329412 }},
1308 + {"salmon4",  {0.545098 , 0.298039 , 0.223529 }},
1309 + {"sandy_brown",  {0.956863 , 0.643137 , 0.376471 }},
1310 + {"sea_green",  {0.180392 , 0.545098 , 0.341176 }},
1311 + {"seashell",  {1.000000 , 0.960784 , 0.933333 }},
1312 + {"seashell1",  {1.000000 , 0.960784 , 0.933333 }},
1313 + {"seashell2",  {0.933333 , 0.898039 , 0.870588 }},
1314 + {"seashell3",  {0.803922 , 0.772549 , 0.749020 }},
1315 + {"seashell4",  {0.545098 , 0.525490 , 0.509804 }},
1316 + {"sienna",  {0.627451 , 0.321569 , 0.176471 }},
1317 + {"sienna1",  {1.000000 , 0.509804 , 0.278431 }},
1318 + {"sienna2",  {0.933333 , 0.474510 , 0.258824 }},
1319 + {"sienna3",  {0.803922 , 0.407843 , 0.223529 }},
1320 + {"sienna4",  {0.545098 , 0.278431 , 0.149020 }},
1321 + {"sky_blue",  {0.529412 , 0.807843 , 0.921569 }},
1322 + {"slate_blue",  {0.415686 , 0.352941 , 0.803922 }},
1323 + {"slate_gray",  {0.439216 , 0.501961 , 0.564706 }},
1324 + {"slate_grey",  {0.439216 , 0.501961 , 0.564706 }},
1325 + {"snow",  {1.000000 , 0.980392 , 0.980392 }},
1326 + {"snow1",  {1.000000 , 0.980392 , 0.980392 }},
1327 + {"snow2",  {0.933333 , 0.913725 , 0.913725 }},
1328 + {"snow3",  {0.803922 , 0.788235 , 0.788235 }},
1329 + {"snow4",  {0.545098 , 0.537255 , 0.537255 }},
1330 + {"spring_green",  {0.000000 , 1.000000 , 0.498039 }},
1331 + {"steel_blue",  {0.274510 , 0.509804 , 0.705882 }},
1332 + {"tan",  {0.823529 , 0.705882 , 0.549020 }},
1333 + {"tan1",  {1.000000 , 0.647059 , 0.309804 }},
1334 + {"tan2",  {0.933333 , 0.603922 , 0.286275 }},
1335 + {"tan3",  {0.803922 , 0.521569 , 0.247059 }},
1336 + {"tan4",  {0.545098 , 0.352941 , 0.168627 }},
1337 + {"thistle",  {0.847059 , 0.749020 , 0.847059 }},
1338 + {"thistle1",  {1.000000 , 0.882353 , 1.000000 }},
1339 + {"thistle2",  {0.933333 , 0.823529 , 0.933333 }},
1340 + {"thistle3",  {0.803922 , 0.709804 , 0.803922 }},
1341 + {"thistle4",  {0.545098 , 0.482353 , 0.545098 }},
1342 + {"tomato",  {1.000000 , 0.388235 , 0.278431 }},
1343 + {"tomato1",  {1.000000 , 0.388235 , 0.278431 }},
1344 + {"tomato2",  {0.933333 , 0.360784 , 0.258824 }},
1345 + {"tomato3",  {0.803922 , 0.309804 , 0.223529 }},
1346 + {"tomato4",  {0.545098 , 0.211765 , 0.149020 }},
1347 + {"turquoise",  {0.250980 , 0.878431 , 0.815686 }},
1348 + {"turquoise1",  {0.000000 , 0.960784 , 1.000000 }},
1349 + {"turquoise2",  {0.000000 , 0.898039 , 0.933333 }},
1350 + {"turquoise3",  {0.000000 , 0.772549 , 0.803922 }},
1351 + {"turquoise4",  {0.000000 , 0.525490 , 0.545098 }},
1352 + {"violet",  {0.933333 , 0.509804 , 0.933333 }},
1353 + {"violet_red",  {0.815686 , 0.125490 , 0.564706 }},
1354 + {"wheat",  {0.960784 , 0.870588 , 0.701961 }},
1355 + {"wheat1",  {1.000000 , 0.905882 , 0.729412 }},
1356 + {"wheat2",  {0.933333 , 0.847059 , 0.682353 }},
1357 + {"wheat3",  {0.803922 , 0.729412 , 0.588235 }},
1358 + {"wheat4",  {0.545098 , 0.494118 , 0.400000 }},
1359 + {"white",  {1.000000 , 1.000000 , 1.000000 }},
1360 + {"white_smoke",  {0.960784 , 0.960784 , 0.960784 }},
1361 + {"yellow",  {1.000000 , 1.000000 , 0.000000 }},
1362 + {"yellow1",  {1.000000 , 1.000000 , 0.000000 }},
1363 + {"yellow2",  {0.933333 , 0.933333 , 0.000000 }},
1364 + {"yellow3",  {0.803922 , 0.803922 , 0.000000 }},
1365 + {"yellow4",  {0.545098 , 0.545098 , 0.000000 }},
1366 + {"yellow_green",  {0.603922 , 0.803922 , 0.196078} }
1367 + } ;
1368 +
1369 + int
1370 + LookupColorByName(
1371 +                char * name,
1372 +                Vec color
1373 + )
1374 + {
1375 +        int rc ;
1376 +        rc = BinarySearch(name, 0, NCOLORS - 1 , Colors) ;
1377 +        if (rc < 0) {
1378 +                return(0) ;
1379 +        }
1380 +
1381 +        VecCopy(Colors[rc].ce_color, color) ;
1382 +        return 1 ;
1383 + }
1384 +
1385 +
1386 + int
1387 + BinarySearch(
1388 +        char * name,
1389 +        int l,
1390 +        int h,
1391 +        ColorEntry array[]
1392 + )
1393 + {
1394 +        int m, rc ;
1395 +        if (l > h)
1396 +                return(-1) ;
1397 +        
1398 +        m = (l + h) / 2 ;
1399 +
1400 +        rc = strcmp(name, array[m].ce_name) ;
1401 +        if (rc == 0)
1402 +                return m ;
1403 +        else if (rc < 0)
1404 +                return BinarySearch(name, l, m-1, array) ;
1405 +        else
1406 +                return BinarySearch(name, m + 1, h, array) ;
1407   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines