You must follow the same [instructions](../README.md) as in the first subject but this time with colors.
The output should manipulate colors using the **flag**`--color=<color>`, in which `--color` is the flag and `<color>` is the color desired by the user. These colors can be achieved using different notations (color code systems, like `RGB`, `hsl`, `ANSI`...), it is up to you to choose which one you want to use.
The output should manipulate colors using the **flag**`--color=<color> <letters to be colored>`, in which `--color` is the flag and `<color>` is the color desired by the user and `<letters to be colored>` is the letter or letters that you can chose to be colored. These colors can be achieved using different notations (color code systems, like `RGB`, `hsl`, `ANSI`...), it is up to you to choose which one you want to use.
- You should be able to choose between coloring a single letter or a set of letters (use your imagination for this one).
- You should be able to choose between coloring a single letter or a set of letters.
- If the letter is not specified, the whole `string` should be colored.
- The flag must have exactly the same format as above, any other formats must return the following usage message:
```console
Usage: go run . [STRING] [OPTION]
Usage: go run . [OPTION] [STRING]
EX: go run . something --color=<color>
EX: go run . --color=<color><letterstobecolored> "something"
```
If there are other `ascii-art` optional projects implemented, the program should accept other correctly formatted `[OPTION]` and/or `[BANNER]`.
If there are other `ascii-art` optional projects implemented, the program should accept other correctly formatted `[OPTION]` and/or `[BANNER]`.
Additionally, the program must still be able to run with a single `[STRING]` argument.