diff --git a/objs.mk b/objs.mk
index 53330de..fc8adf4 100644
--- a/objs.mk
+++ b/objs.mk
@@ -23,12 +23,21 @@ src/src_help.o: src/help.c
OBJS += src/src_image_fill.o
src/src_image_fill.o: src/image/fill.c
$(CC) $(CFLAGS) -c -o $@ src/image/fill.c
+OBJS += src/src_image_fixme.o
+src/src_image_fixme.o: src/image/fixme.c
+ $(CC) $(CFLAGS) -c -o $@ src/image/fixme.c
+OBJS += src/src_image_note.o
+src/src_image_note.o: src/image/note.c
+ $(CC) $(CFLAGS) -c -o $@ src/image/note.c
OBJS += src/src_image_valid-css.o
src/src_image_valid-css.o: src/image/valid-css.c
$(CC) $(CFLAGS) -c -o $@ src/image/valid-css.c
OBJS += src/src_image_valid-html401.o
src/src_image_valid-html401.o: src/image/valid-html401.c
$(CC) $(CFLAGS) -c -o $@ src/image/valid-html401.c
+OBJS += src/src_image_warning.o
+src/src_image_warning.o: src/image/warning.c
+ $(CC) $(CFLAGS) -c -o $@ src/image/warning.c
OBJS += src/src_main.o
src/src_main.o: src/main.c
$(CC) $(CFLAGS) -c -o $@ src/main.c
diff --git a/src/classic.c b/src/classic.c
index 511ef39..03882dc 100644
--- a/src/classic.c
+++ b/src/classic.c
@@ -3,12 +3,21 @@
#include "image/fill.h"
#include "image/valid-html401.h"
#include "image/valid-css.h"
+#include "image/fixme.h"
+#include "image/warning.h"
+#include "image/note.h"
void classic_stylesheet(FILE* out, const char* top) {
FILE* f;
char path[128];
char* breadcrumb_bgcolor = NULL;
xl_node_t** nodes;
+ char* messages[] = {
+ "fixme", "#cc6600", /**/
+ "warning", "#990000", /**/
+ "note", "#006699" /**/
+ };
+ int i;
sprintf(path, "%sfill.gif", top);
f = fopen(path, "wb");
@@ -25,6 +34,21 @@ void classic_stylesheet(FILE* out, const char* top) {
fwrite(image_valid_css, 1, image_valid_css_len, f);
fclose(f);
+ sprintf(path, "%sfixme.png", top);
+ f = fopen(path, "wb");
+ fwrite(image_fixme, 1, image_fixme_len, f);
+ fclose(f);
+
+ sprintf(path, "%swarning.png", top);
+ f = fopen(path, "wb");
+ fwrite(image_warning, 1, image_warning_len, f);
+ fclose(f);
+
+ sprintf(path, "%snote.png", top);
+ f = fopen(path, "wb");
+ fwrite(image_note, 1, image_note_len, f);
+ fclose(f);
+
if((nodes = xl_get_path(skinconf->root, "breadcrumb")) != NULL) {
breadcrumb_bgcolor = xl_get_attribute(nodes[0], "color");
@@ -46,6 +70,7 @@ void classic_stylesheet(FILE* out, const char* top) {
fprintf(out, " padding-top: 2px;\n");
fprintf(out, " padding-bottom: 2px;\n");
fprintf(out, "}\n");
+ fprintf(out, "\n");
fprintf(out, "form {\n");
fprintf(out, " margin-top: 0;\n");
fprintf(out, " margin-bottom: 0;\n");
@@ -111,49 +136,127 @@ void classic_stylesheet(FILE* out, const char* top) {
fprintf(out, "tr.odd {\n");
fprintf(out, " background-color: #dddddd;\n");
fprintf(out, "}\n");
+ fprintf(out, "\n");
+ for(i = 0; i < sizeof(messages) / sizeof(messages[0]); i += 2) {
+ fprintf(out, ".%s-message {\n", messages[i]);
+ fprintf(out, " border-top: solid 5px %s;\n", messages[i + 1]);
+ fprintf(out, " border-left: solid 1px %s;\n", messages[i + 1]);
+ fprintf(out, " padding: 0.33em 0 0.67em 5px;\n");
+ fprintf(out, " margin: 0.67em 0;\n");
+ fprintf(out, "}\n");
+ }
}
void classic_head(FILE* out, const char* top, xl_node_t* header) {
fprintf(out, " \n", top);
}
-static void recursive(FILE* out, xl_node_t* element) {
- int i;
+static void print(FILE* out, const char* txt, int indent) {
+ int i;
+
+ for(i = 0;; i++) {
+ if(i == 0 || txt[i] == '\n' || txt[i] == 0) {
+ int j;
+ if(i > 0) fprintf(out, "\n");
+ if(txt[i] == 0) break;
+ for(j = 0; j < indent; j++) fprintf(out, "\t");
+ }
+
+ if(txt[i] != '\n') fprintf(out, "%c", txt[i]);
+ }
+}
+
+static void recursive(FILE* out, const char* top, xl_node_t* element, int indent) {
xl_node_t* child;
- char* tag = NULL;
- char* end = NULL;
+ char tag[2048]; /* enough for most cases... :) */
+ char end[128];
+ int add = 0;
+
+ tag[0] = end[0] = 0;
if(element->name == NULL) return;
if(strcmp(element->name, "section") == 0) {
char* title = xl_get_attribute(element, "title");
- if(title != NULL) fprintf(out, "
%s
\n", title);
- } else if(strcmp(element->name, "p") == 0) {
- tag = "";
- end = "
";
- } else if(strcmp(element->name, "code") == 0) {
- tag = "";
- end = "";
+ sprintf(tag, "%s
", title);
+ } else if(strcmp(element->name, "fixme") == 0 || /**/
+ strcmp(element->name, "warning") == 0 || /**/
+ strcmp(element->name, "note") == 0) {
+ char* text = "";
+
+ if(strcmp(element->name, "fixme") == 0) {
+ text = "Fixme";
+ } else if(strcmp(element->name, "warning") == 0) {
+ text = "Warning";
+ } else if(strcmp(element->name, "note") == 0) {
+ text = "Note";
+ }
+
+ sprintf(tag + strlen(tag), "\n", element->name);
+ sprintf(tag + strlen(tag), "
\n");
+ sprintf(tag + strlen(tag), " \n");
+ sprintf(tag + strlen(tag), " \n");
+ sprintf(tag + strlen(tag), " \n", top, element->name);
+ sprintf(tag + strlen(tag), " | \n");
+ sprintf(tag + strlen(tag), " \n");
+ sprintf(tag + strlen(tag), " %s\n", text);
+ sprintf(tag + strlen(tag), " | \n");
+ sprintf(tag + strlen(tag), "
\n");
+ sprintf(tag + strlen(tag), " \n");
+ sprintf(tag + strlen(tag), " | ");
+
+ sprintf(end + strlen(end), " | \n");
+ sprintf(end + strlen(end), "
\n");
+ sprintf(end + strlen(end), "
\n");
+ sprintf(end + strlen(end), "
", element->name);
+
+ add = 3;
+ } else if(strcmp(element->name, "p") == 0 || /**/
+ strcmp(element->name, "code") == 0 || /**/
+ strcmp(element->name, "blockquote") == 0 || /**/
+ strcmp(element->name, "ul") == 0 || /**/
+ strcmp(element->name, "ol") == 0 || /**/
+ strcmp(element->name, "li") == 0) {
+ sprintf(tag, "<%s>", element->name);
+
+ sprintf(end, "%s>", element->name);
+ } else if(strcmp(element->name, "a") == 0) {
+ char text[2048];
+ xl_attribute_t* attr = element->first_attribute;
+
+ text[0] = 0;
+ while(attr != NULL) {
+ if(attr->value == NULL) {
+ sprintf(text + strlen(text), " %s", attr->key);
+ } else {
+ sprintf(text + strlen(text), " %s=\"%s\"", attr->key, attr->value);
+ }
+
+ attr = attr->next;
+ }
+
+ sprintf(tag, "<%s%s>", element->name, text);
+
+ sprintf(end, "%s>", element->name);
+ } else if(strcmp(element->name, "hr") == 0) {
+ sprintf(tag, "<%s>", element->name);
}
- if(tag != NULL) fprintf(out, " %s\n", tag);
+ if(tag[0] != 0) print(out, tag, indent + 6);
child = element->first_child;
while(child != NULL) {
if(child->type == XL_NODE_NODE && child->name != NULL) {
- recursive(out, child);
+ recursive(out, top, child, indent + 1 + add);
} else if(child->type == XL_NODE_TEXT && child->text != NULL) {
- if(strcmp(element->name, "title") == 0) {
- } else {
- fprintf(out, "%s ", child->text);
- }
+ print(out, child->text, indent + 7 + add);
}
child = child->next;
}
- if(end != NULL) fprintf(out, " %s\n", end);
+ if(end[0] != 0) print(out, end, indent + 6);
}
void classic_body(FILE* out, const char* top, const char* title, xl_node_t* body) {
@@ -237,7 +340,7 @@ void classic_body(FILE* out, const char* top, const char* title, xl_node_t* body
child = body->first_child;
while(child != NULL) {
- recursive(out, child);
+ recursive(out, top, child, 0);
child = child->next;
}
diff --git a/src/image/fixme.c b/src/image/fixme.c
new file mode 100644
index 0000000..e5e9ca7
--- /dev/null
+++ b/src/image/fixme.c
@@ -0,0 +1,91 @@
+unsigned char image_fixme[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20,
+ 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x03,
+ 0xeb, 0x49, 0x44, 0x41, 0x54, 0x58, 0x85, 0xb5, 0x96, 0x4d, 0x4c, 0x5c,
+ 0x55, 0x14, 0xc7, 0x7f, 0xef, 0x0d, 0x6f, 0x28, 0xc3, 0x10, 0x28, 0x65,
+ 0x20, 0x26, 0x60, 0x75, 0x55, 0x9b, 0x10, 0x76, 0x6c, 0xec, 0xc2, 0xc6,
+ 0xd4, 0x55, 0x63, 0xe3, 0xc6, 0x4d, 0x37, 0x6d, 0x68, 0x62, 0xe2, 0xce,
+ 0x44, 0x97, 0x6e, 0xdc, 0x28, 0x75, 0xa1, 0x98, 0x34, 0x8a, 0x46, 0xd3,
+ 0x34, 0xa9, 0xf1, 0xa3, 0xc1, 0x74, 0x61, 0xa2, 0x31, 0xd8, 0x50, 0x8d,
+ 0x86, 0x06, 0x81, 0x42, 0x13, 0x28, 0x2d, 0x54, 0x5a, 0x18, 0x87, 0x01,
+ 0xa6, 0xe0, 0xcc, 0x74, 0xbe, 0xde, 0xbb, 0xf7, 0xb8, 0x98, 0x79, 0x33,
+ 0xaf, 0xb6, 0x79, 0xc3, 0x4c, 0x3b, 0x27, 0xb9, 0x8b, 0xc9, 0x7d, 0x73,
+ 0xff, 0xbf, 0x73, 0xee, 0xff, 0xde, 0x73, 0xa1, 0x7a, 0x58, 0xc0, 0x29,
+ 0x60, 0x19, 0x88, 0x03, 0xdf, 0x01, 0x6f, 0x02, 0x87, 0x01, 0x73, 0x0f,
+ 0xff, 0xaf, 0x3b, 0x5c, 0xe1, 0xdb, 0xc3, 0xc3, 0x1f, 0xc8, 0xea, 0xea,
+ 0xb2, 0xec, 0xee, 0xc4, 0x64, 0x66, 0xfa, 0x37, 0xb9, 0x78, 0xe1, 0x9c,
+ 0x9c, 0x19, 0x7a, 0x5d, 0x80, 0x0d, 0xe0, 0xdb, 0x46, 0x01, 0xdd, 0x1e,
+ 0x1e, 0x1e, 0x96, 0xd5, 0xd5, 0x55, 0x11, 0x71, 0x44, 0x74, 0x4e, 0x44,
+ 0xa7, 0x44, 0xd4, 0x96, 0x88, 0x73, 0x4f, 0xc4, 0x5e, 0x94, 0xdd, 0xcd,
+ 0x2b, 0x32, 0x33, 0x39, 0x2a, 0x17, 0xbf, 0x7a, 0x4b, 0xce, 0x9c, 0x3a,
+ 0xea, 0x02, 0xd5, 0x14, 0x86, 0xcf, 0x9c, 0x48, 0xfa, 0x32, 0x34, 0x3d,
+ 0x07, 0x81, 0x67, 0x20, 0x10, 0x06, 0x29, 0x80, 0xe4, 0x40, 0x1e, 0x14,
+ 0x87, 0x4e, 0x82, 0x24, 0xd1, 0x99, 0x6d, 0xb2, 0xb3, 0x57, 0x08, 0x1f,
+ 0xbb, 0x50, 0x6d, 0xcd, 0x47, 0xa2, 0xc9, 0x77, 0x56, 0xb6, 0x20, 0x1f,
+ 0x03, 0x65, 0x83, 0xb6, 0x20, 0xf0, 0x2c, 0x58, 0xdd, 0x60, 0x85, 0x80,
+ 0x1c, 0x48, 0x96, 0xdc, 0xad, 0x39, 0xb2, 0x53, 0x5f, 0x13, 0x90, 0xcd,
+ 0x5a, 0x74, 0xf7, 0x0a, 0x20, 0x20, 0x1a, 0xb4, 0x02, 0x27, 0x0d, 0xd9,
+ 0x28, 0x14, 0xd2, 0x50, 0xb0, 0xa1, 0xb9, 0x97, 0x7f, 0x67, 0x67, 0x50,
+ 0xb1, 0x4b, 0x18, 0x01, 0xc0, 0x8a, 0x34, 0x02, 0x40, 0x97, 0x86, 0x2a,
+ 0x42, 0x68, 0x07, 0xb4, 0x0d, 0x2a, 0x09, 0x3b, 0xd7, 0x50, 0xb1, 0xcb,
+ 0x40, 0xa9, 0xe6, 0x35, 0x15, 0xbe, 0x12, 0xfe, 0xae, 0x15, 0x29, 0x09,
+ 0xab, 0xa2, 0xb0, 0xb6, 0x41, 0x15, 0x40, 0x39, 0x20, 0x0e, 0x65, 0x75,
+ 0xa3, 0x6e, 0xfd, 0x6a, 0x00, 0x6e, 0x05, 0x9c, 0x62, 0xf6, 0xca, 0x2e,
+ 0xf9, 0xc1, 0x2e, 0xfe, 0xf6, 0x86, 0xd1, 0xdc, 0x08, 0x80, 0x52, 0xf6,
+ 0xca, 0x03, 0xa0, 0x9d, 0xca, 0xc0, 0x2d, 0x7f, 0xa4, 0x51, 0x5b, 0xa0,
+ 0x8a, 0xd9, 0x8b, 0xe3, 0x81, 0xc8, 0x97, 0x00, 0x74, 0xf9, 0x33, 0x03,
+ 0x30, 0x1a, 0x02, 0xa0, 0xb5, 0x27, 0xf3, 0xd2, 0xfe, 0xbb, 0x66, 0x14,
+ 0xed, 0x51, 0xa7, 0x51, 0x15, 0x70, 0x3c, 0xee, 0x2f, 0x94, 0x86, 0xbb,
+ 0x05, 0xea, 0xa1, 0x4f, 0x1b, 0x63, 0xc2, 0x87, 0x8e, 0x5e, 0xbe, 0x22,
+ 0xee, 0x9a, 0xd3, 0xab, 0x6e, 0x04, 0x1b, 0x01, 0xe0, 0x71, 0xbe, 0xf2,
+ 0x9a, 0xd0, 0x2e, 0xfa, 0xa3, 0x24, 0x6e, 0x18, 0x0d, 0xf3, 0x80, 0x9b,
+ 0xbd, 0xed, 0xd9, 0x7b, 0x07, 0x84, 0x32, 0x40, 0x59, 0xb7, 0x71, 0x00,
+ 0x4e, 0xe5, 0x12, 0x72, 0xdd, 0x2f, 0x76, 0x11, 0xc2, 0x63, 0x40, 0xc3,
+ 0xb0, 0x9e, 0x3a, 0xc0, 0x9d, 0xf7, 0x3e, 0xba, 0xca, 0x8d, 0xc5, 0x18,
+ 0xda, 0xce, 0x17, 0x4f, 0x80, 0x38, 0xa5, 0xa3, 0x09, 0x50, 0x31, 0xa1,
+ 0x61, 0xc0, 0x76, 0xca, 0xae, 0x0b, 0x20, 0xe0, 0x33, 0xf7, 0xe9, 0xc4,
+ 0xe4, 0x9a, 0xfd, 0xd9, 0x37, 0x0b, 0x2f, 0xff, 0xbd, 0x9e, 0x61, 0x7f,
+ 0x18, 0x7a, 0xda, 0x4d, 0x2c, 0xc3, 0xbd, 0x1b, 0x84, 0xec, 0x76, 0x0c,
+ 0xc3, 0x84, 0x1b, 0xeb, 0xad, 0xbc, 0xf1, 0x65, 0x94, 0xf5, 0x04, 0x43,
+ 0xc0, 0xf5, 0xa7, 0x05, 0x70, 0xfa, 0xc8, 0x60, 0xef, 0xc8, 0xd8, 0xe8,
+ 0x09, 0x5e, 0x3d, 0xd2, 0xcd, 0xd4, 0x5f, 0x1b, 0xbc, 0x7d, 0xee, 0x1a,
+ 0x6d, 0xfb, 0x42, 0xf4, 0x74, 0x34, 0x11, 0x0a, 0x42, 0x2a, 0x1e, 0x63,
+ 0x6c, 0x1a, 0xbe, 0xf8, 0x29, 0xc3, 0xc4, 0x12, 0x09, 0x60, 0x1c, 0x98,
+ 0xad, 0x05, 0xc0, 0xf7, 0x41, 0xb2, 0xb9, 0xf0, 0x0e, 0x5d, 0xdd, 0xed,
+ 0xa8, 0xec, 0x03, 0x54, 0x72, 0x87, 0xdd, 0x68, 0x9c, 0x3f, 0x7e, 0x5f,
+ 0xe4, 0xfc, 0xcf, 0x4b, 0x1c, 0x1b, 0xec, 0x65, 0xe9, 0xe6, 0x3a, 0x87,
+ 0xc2, 0x70, 0xfc, 0x05, 0x88, 0xe6, 0x23, 0x1c, 0xfd, 0x64, 0xab, 0xda,
+ 0x9a, 0xb5, 0x01, 0xc8, 0xc2, 0x69, 0x10, 0x85, 0xb4, 0x46, 0x50, 0xc1,
+ 0x56, 0x74, 0x26, 0x85, 0xb3, 0x93, 0x20, 0xbb, 0x11, 0x63, 0x6e, 0xe6,
+ 0x0e, 0x2a, 0x95, 0xe2, 0x70, 0xfb, 0x16, 0xa6, 0x09, 0xfb, 0x9f, 0x1f,
+ 0x20, 0x74, 0x72, 0xbe, 0x66, 0x00, 0xff, 0xf7, 0x80, 0x72, 0xa0, 0x90,
+ 0xc6, 0x48, 0xc5, 0x69, 0x12, 0x8d, 0xb4, 0x1f, 0xc4, 0xec, 0xea, 0xc6,
+ 0xdc, 0xd7, 0xc2, 0x60, 0x5b, 0x98, 0x42, 0x3c, 0x8a, 0xba, 0xdf, 0x4c,
+ 0x28, 0x04, 0xa6, 0xff, 0x4a, 0x75, 0x02, 0x68, 0x4f, 0xf7, 0x53, 0x79,
+ 0x8c, 0xcd, 0x79, 0x9a, 0x34, 0x98, 0xed, 0x07, 0x09, 0x74, 0x1d, 0x80,
+ 0x74, 0x06, 0x9d, 0x5c, 0xc5, 0x30, 0xdb, 0xea, 0x53, 0xaf, 0x0a, 0xa0,
+ 0x3c, 0x8d, 0xc7, 0x73, 0xfc, 0xcc, 0xdd, 0x5b, 0x98, 0x40, 0x7a, 0x6d,
+ 0x9e, 0x80, 0x15, 0xf9, 0xff, 0x4d, 0x38, 0x04, 0x6c, 0x03, 0x87, 0x1e,
+ 0xb3, 0x62, 0x1c, 0x98, 0x07, 0x16, 0x81, 0x7c, 0x75, 0x80, 0x72, 0xf3,
+ 0x51, 0x95, 0xdb, 0x4f, 0x2a, 0xd3, 0xe5, 0xa7, 0x98, 0x01, 0x18, 0xe5,
+ 0xa5, 0x0e, 0x94, 0xc6, 0xe3, 0xa2, 0x07, 0x78, 0x05, 0x78, 0x09, 0xb8,
+ 0x09, 0xcc, 0xf9, 0x5d, 0x44, 0xcb, 0x67, 0xcf, 0x2f, 0x71, 0xf7, 0x9f,
+ 0x6c, 0xa5, 0x02, 0x00, 0x78, 0x5e, 0x42, 0x6e, 0x1f, 0xc0, 0xe2, 0xd7,
+ 0xb9, 0x5d, 0x37, 0xc3, 0xbd, 0x44, 0x10, 0x18, 0x00, 0x06, 0xfc, 0xee,
+ 0x81, 0xd1, 0xf1, 0xa9, 0xc4, 0xca, 0xc8, 0xf7, 0x6b, 0xfd, 0x2d, 0x96,
+ 0x74, 0xf6, 0x75, 0x05, 0xe9, 0x68, 0x35, 0x81, 0x4a, 0x17, 0xcc, 0xdd,
+ 0x8f, 0x63, 0x06, 0x3a, 0x99, 0x58, 0xb4, 0x39, 0xfe, 0xfe, 0xdd, 0x38,
+ 0xf0, 0x39, 0x50, 0xd8, 0x23, 0x44, 0x14, 0xf8, 0xd1, 0x0f, 0x40, 0x03,
+ 0x73, 0xc0, 0xe8, 0xf8, 0x74, 0x72, 0x65, 0x64, 0x2c, 0xde, 0xdf, 0xd2,
+ 0xec, 0x74, 0xf6, 0x45, 0x82, 0x74, 0x84, 0x8b, 0xe5, 0xce, 0xed, 0x68,
+ 0xae, 0x2e, 0x29, 0x4e, 0x7c, 0xb8, 0xe1, 0x8a, 0xa7, 0xf7, 0x28, 0x9e,
+ 0x06, 0x2e, 0x01, 0x39, 0x3f, 0x80, 0x47, 0x41, 0x66, 0x32, 0x2b, 0x23,
+ 0x63, 0x89, 0xfe, 0x96, 0x66, 0xdd, 0xd9, 0x17, 0x09, 0x32, 0x79, 0xfd,
+ 0x1e, 0xaf, 0x7d, 0x9c, 0xa9, 0x55, 0x5c, 0x01, 0x3f, 0x00, 0x09, 0xa8,
+ 0xaf, 0x89, 0x5a, 0xc0, 0x49, 0xe0, 0x5d, 0xa0, 0xcd, 0x23, 0xfe, 0x27,
+ 0xb0, 0x06, 0xbc, 0x08, 0xf4, 0xf9, 0xfc, 0xff, 0x97, 0x52, 0x42, 0x4f,
+ 0x1c, 0x16, 0xd0, 0xf1, 0xa4, 0x8b, 0xfc, 0x07, 0xe1, 0x79, 0x29, 0x65,
+ 0xdb, 0xb1, 0x60, 0x51, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44,
+ 0xae, 0x42, 0x60, 0x82};
+unsigned int image_fixme_len = 1060;
diff --git a/src/image/fixme.h b/src/image/fixme.h
new file mode 100644
index 0000000..efdfff9
--- /dev/null
+++ b/src/image/fixme.h
@@ -0,0 +1,2 @@
+extern unsigned char image_fixme[];
+extern unsigned int image_fixme_len;
diff --git a/src/image/fixme.png b/src/image/fixme.png
new file mode 100644
index 0000000..f13611c
Binary files /dev/null and b/src/image/fixme.png differ
diff --git a/src/image/note.c b/src/image/note.c
new file mode 100644
index 0000000..af5ee76
--- /dev/null
+++ b/src/image/note.c
@@ -0,0 +1,103 @@
+unsigned char image_note[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20,
+ 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x04,
+ 0x78, 0x49, 0x44, 0x41, 0x54, 0x58, 0x85, 0xbd, 0xd7, 0x5f, 0x6c, 0x1c,
+ 0xd5, 0x15, 0xc7, 0xf1, 0xcf, 0xee, 0xda, 0xbb, 0x6b, 0xc7, 0x8b, 0x53,
+ 0xca, 0x2c, 0x22, 0x75, 0xda, 0xda, 0x49, 0xe4, 0x56, 0x4e, 0x51, 0x09,
+ 0x14, 0x22, 0xf9, 0x81, 0xca, 0xaa, 0xa0, 0x95, 0x2a, 0xf5, 0xa5, 0x48,
+ 0x90, 0xc0, 0x0b, 0x55, 0x5b, 0x0a, 0x6a, 0x94, 0xd2, 0x3f, 0x02, 0xa5,
+ 0x12, 0xb4, 0x2a, 0xaa, 0xda, 0x07, 0xc4, 0x13, 0x6f, 0xfc, 0x79, 0xa8,
+ 0xda, 0x4a, 0xbc, 0xf0, 0x80, 0x0a, 0x02, 0x51, 0xa1, 0x02, 0x72, 0x14,
+ 0x21, 0x4a, 0x42, 0x4c, 0x70, 0x48, 0x82, 0x10, 0x9b, 0x26, 0xf5, 0x18,
+ 0xdb, 0x6b, 0x77, 0x6d, 0xcf, 0x7a, 0x77, 0xa7, 0x0f, 0xb3, 0xeb, 0x2c,
+ 0x49, 0xec, 0x06, 0xff, 0xe9, 0x4f, 0x3a, 0x1a, 0xe9, 0xde, 0x99, 0x7b,
+ 0xbe, 0xf7, 0x9c, 0x3b, 0xe7, 0xcc, 0xb0, 0xba, 0xba, 0xf1, 0x0b, 0xfc,
+ 0x13, 0xd5, 0xa6, 0xbd, 0x8d, 0x9f, 0x37, 0xe7, 0xd6, 0xad, 0xd4, 0x2a,
+ 0x73, 0xdb, 0xf1, 0xa2, 0xeb, 0x7f, 0x3d, 0x14, 0x6c, 0x1b, 0x21, 0xfd,
+ 0x39, 0xe1, 0xdc, 0x0c, 0x13, 0xef, 0x33, 0xfe, 0x77, 0x3c, 0x37, 0x86,
+ 0xef, 0xe0, 0xe3, 0xf5, 0x00, 0x64, 0x56, 0x18, 0xef, 0xc6, 0x3f, 0x8c,
+ 0xfc, 0x69, 0xa8, 0xef, 0xe6, 0x1f, 0xe9, 0xee, 0xdb, 0x29, 0x75, 0xd5,
+ 0x56, 0xb9, 0xce, 0xbc, 0x2d, 0xe9, 0x6e, 0xf3, 0xa9, 0x6d, 0x4c, 0x17,
+ 0x8a, 0xbc, 0x73, 0x1b, 0x9e, 0xc5, 0xd2, 0x46, 0x03, 0x1c, 0x70, 0xfd,
+ 0x23, 0xfb, 0xfb, 0xf6, 0xde, 0xe7, 0xa6, 0x9d, 0x79, 0xdf, 0xbb, 0x31,
+ 0xa5, 0x91, 0xea, 0x34, 0x11, 0x75, 0xa9, 0x47, 0x91, 0xf9, 0xc5, 0x79,
+ 0x6a, 0x39, 0xe6, 0xb3, 0x45, 0xc6, 0xa7, 0x31, 0xba, 0x56, 0x80, 0xf4,
+ 0x0a, 0xe3, 0xfb, 0x83, 0x2f, 0xdf, 0x26, 0xdb, 0x9d, 0xb5, 0x77, 0x17,
+ 0xbf, 0xba, 0x9d, 0xbd, 0x3b, 0xc9, 0x76, 0x67, 0xc9, 0x77, 0x91, 0xcd,
+ 0x21, 0x8b, 0x41, 0xd8, 0xb7, 0x56, 0xe7, 0xd0, 0xb1, 0xc2, 0xf8, 0x90,
+ 0xec, 0x35, 0xaa, 0x4b, 0x1c, 0x3e, 0xc5, 0x1f, 0x25, 0xd7, 0xea, 0x12,
+ 0xea, 0xf5, 0xc4, 0xd4, 0x09, 0xb6, 0x12, 0xda, 0xbd, 0x19, 0x00, 0xcc,
+ 0xce, 0x8a, 0x66, 0xa6, 0xbc, 0x95, 0xba, 0xda, 0x89, 0x73, 0x54, 0x96,
+ 0x88, 0x66, 0xa6, 0x28, 0x97, 0x99, 0xaf, 0x10, 0x2e, 0x10, 0xac, 0x76,
+ 0x86, 0xd7, 0x07, 0x70, 0x3c, 0x3c, 0x7f, 0x62, 0x4f, 0xd0, 0x91, 0x13,
+ 0x55, 0xe6, 0x45, 0xf9, 0x2c, 0x8b, 0x55, 0x66, 0xa6, 0x85, 0x9f, 0x4c,
+ 0x50, 0x9e, 0xc2, 0x62, 0xd3, 0x1c, 0xdf, 0x0c, 0x80, 0xbf, 0x38, 0xf7,
+ 0xf2, 0x9e, 0x50, 0x2f, 0xe5, 0x4f, 0xe8, 0xec, 0x64, 0xa9, 0xc6, 0x5c,
+ 0x99, 0xa9, 0x49, 0x4a, 0xe7, 0x09, 0xb2, 0x92, 0xf2, 0xe0, 0xcf, 0x1b,
+ 0x0d, 0x90, 0x45, 0xcc, 0x6b, 0x1c, 0xeb, 0x26, 0xf8, 0x06, 0xb9, 0x0c,
+ 0x51, 0x9d, 0xb0, 0x82, 0x59, 0x82, 0x1c, 0x4e, 0x91, 0x5b, 0x84, 0xbb,
+ 0x30, 0x83, 0xa7, 0xd6, 0x02, 0x70, 0xb9, 0x24, 0x9e, 0x1c, 0xfe, 0xe1,
+ 0xe3, 0xbb, 0xbe, 0x34, 0x7c, 0xa7, 0xa3, 0x7f, 0xfd, 0x83, 0xb1, 0x97,
+ 0x3e, 0xc4, 0x2e, 0x6c, 0x25, 0x48, 0x63, 0x1e, 0x27, 0xb0, 0x85, 0xed,
+ 0xf7, 0x13, 0x7d, 0xc8, 0xd8, 0xbe, 0x95, 0xd6, 0x5a, 0x13, 0x40, 0xbc,
+ 0xf7, 0xf7, 0x0d, 0xdb, 0x8a, 0xb1, 0x7c, 0xe7, 0xa2, 0x8f, 0x8f, 0xbe,
+ 0xe9, 0xec, 0x91, 0xbf, 0x39, 0xf3, 0xfe, 0x2b, 0xa8, 0x51, 0xf8, 0x26,
+ 0x5d, 0xc3, 0x74, 0xef, 0x66, 0xf6, 0x5f, 0x8c, 0x9f, 0xc2, 0xc1, 0x8d,
+ 0x05, 0x18, 0x38, 0x10, 0xaa, 0x66, 0xaf, 0xd6, 0x9b, 0x6e, 0xb8, 0xf6,
+ 0xf3, 0x0d, 0xf9, 0x5c, 0xd5, 0xe2, 0x6c, 0xd5, 0xcc, 0x64, 0x55, 0x65,
+ 0xba, 0xaa, 0x52, 0x9e, 0x13, 0x9d, 0x7e, 0x4b, 0x38, 0x76, 0x1e, 0x39,
+ 0xfc, 0x6c, 0xcd, 0x00, 0x97, 0x2b, 0x44, 0xf7, 0x9e, 0x79, 0x61, 0xbf,
+ 0x68, 0xf2, 0xa4, 0xf2, 0x02, 0x27, 0xcf, 0x70, 0xec, 0x58, 0x87, 0xa8,
+ 0xd2, 0xa5, 0xd8, 0xd7, 0xe3, 0x9a, 0x62, 0x59, 0x34, 0xfe, 0x92, 0x70,
+ 0xac, 0xd4, 0xf4, 0xb9, 0x52, 0x2d, 0xbb, 0x32, 0xad, 0x44, 0xbd, 0x9b,
+ 0xbe, 0x77, 0xfb, 0x1e, 0x38, 0x4d, 0x95, 0x68, 0xb1, 0xce, 0x62, 0x83,
+ 0x85, 0xba, 0xf0, 0x85, 0x27, 0x9a, 0x8f, 0x65, 0x24, 0xe7, 0x35, 0x87,
+ 0x03, 0xab, 0xad, 0xb5, 0xaa, 0x56, 0xc2, 0x3f, 0x4e, 0x89, 0x18, 0xe2,
+ 0xe4, 0x1a, 0xc7, 0xc2, 0x5a, 0xdc, 0xc6, 0xdd, 0xb2, 0x95, 0xda, 0xc9,
+ 0xfa, 0x00, 0x12, 0xc5, 0xc9, 0xdb, 0xa7, 0x1e, 0x53, 0x8b, 0x69, 0xc4,
+ 0x6d, 0x93, 0xe9, 0x36, 0xdb, 0x2c, 0x80, 0x46, 0x7c, 0xa9, 0xe1, 0xc2,
+ 0xee, 0x37, 0x0f, 0x20, 0x19, 0x6f, 0x48, 0x76, 0xbf, 0x1c, 0x81, 0x76,
+ 0xe7, 0x2d, 0x80, 0x8d, 0x4f, 0xc1, 0x57, 0xf0, 0xea, 0xe0, 0xb7, 0x1f,
+ 0x4a, 0x76, 0x5c, 0x8f, 0xa9, 0x11, 0x36, 0x5c, 0x14, 0x81, 0x8d, 0x49,
+ 0x41, 0x7b, 0x29, 0xce, 0xe3, 0xa1, 0x60, 0x68, 0xe4, 0x91, 0x1b, 0xbe,
+ 0xff, 0xa8, 0xde, 0xed, 0xb7, 0x78, 0xed, 0x8d, 0x46, 0x72, 0x00, 0x5b,
+ 0xe1, 0xaf, 0xc7, 0x2e, 0x8d, 0xc0, 0xc6, 0x01, 0xbc, 0x33, 0xfc, 0x93,
+ 0x27, 0x07, 0xfb, 0x87, 0xf7, 0x49, 0x65, 0x0a, 0x6a, 0x51, 0x4c, 0xbd,
+ 0x71, 0xe1, 0xf0, 0x5d, 0x92, 0x82, 0x96, 0xf3, 0xe5, 0x14, 0xdc, 0xa3,
+ 0xd9, 0x1e, 0xdb, 0xd4, 0xfa, 0x90, 0x8d, 0xb1, 0xa5, 0x39, 0x56, 0xc1,
+ 0x24, 0x4e, 0x61, 0xa6, 0x1d, 0x7f, 0xd0, 0x17, 0x7f, 0x2c, 0xaa, 0x17,
+ 0xa4, 0x33, 0xa4, 0x3a, 0x10, 0xc7, 0x89, 0x2d, 0x87, 0xbe, 0x15, 0x81,
+ 0x36, 0xe7, 0x41, 0x0f, 0x7d, 0x8f, 0x61, 0xf0, 0x19, 0x3c, 0x80, 0x21,
+ 0x17, 0x6a, 0x42, 0x16, 0x3d, 0x28, 0xb4, 0x3d, 0x54, 0x40, 0x3f, 0xbe,
+ 0x85, 0x1d, 0x9f, 0xea, 0x86, 0x1f, 0x4d, 0xf2, 0xd1, 0xf9, 0xd8, 0x75,
+ 0xbd, 0x0d, 0xdb, 0xbf, 0x90, 0x5a, 0xde, 0x79, 0xd8, 0x8a, 0x42, 0xfd,
+ 0xa2, 0x08, 0x04, 0xd7, 0x52, 0xfc, 0x2a, 0x99, 0x3d, 0xf4, 0xde, 0x91,
+ 0xb1, 0x30, 0x76, 0xab, 0xb9, 0x57, 0x6e, 0x15, 0x3e, 0x19, 0x36, 0x61,
+ 0x56, 0x53, 0x0a, 0x5f, 0x6b, 0x8f, 0xc0, 0x07, 0xd1, 0x91, 0xc7, 0x99,
+ 0x3b, 0xe7, 0xdc, 0xbf, 0x63, 0xaf, 0x8f, 0xd6, 0x9a, 0xf9, 0xf7, 0xe9,
+ 0xb7, 0x61, 0x39, 0x02, 0xfd, 0xe4, 0x76, 0x50, 0x6b, 0xce, 0x65, 0xf2,
+ 0xf4, 0xdc, 0x48, 0xe1, 0x5e, 0x08, 0xfe, 0x87, 0xf3, 0x96, 0xca, 0xed,
+ 0x00, 0xbb, 0xc3, 0xd7, 0x7f, 0x79, 0x7f, 0xe9, 0xe9, 0x3d, 0x13, 0xd1,
+ 0x7b, 0xcf, 0xb2, 0x30, 0x9d, 0xe4, 0xbd, 0xb5, 0xfb, 0x46, 0xeb, 0xb6,
+ 0x4e, 0x82, 0xa1, 0x64, 0xf7, 0x6a, 0x2c, 0xd5, 0x5b, 0x94, 0xb1, 0xa9,
+ 0xb3, 0x9c, 0x09, 0xaf, 0xd0, 0xb7, 0x12, 0x0e, 0x5f, 0xae, 0x7e, 0xf7,
+ 0xe0, 0xa0, 0x60, 0xe8, 0x90, 0x1d, 0x0f, 0xe7, 0x5d, 0x35, 0x42, 0x35,
+ 0x97, 0xf4, 0x82, 0x6a, 0xc3, 0x40, 0x71, 0x52, 0x4f, 0xb0, 0x45, 0x3d,
+ 0x4e, 0x51, 0x4f, 0x91, 0xca, 0xa8, 0x2d, 0x31, 0x3e, 0x7a, 0x9a, 0x52,
+ 0x45, 0xf2, 0xe3, 0x74, 0xa8, 0x84, 0x07, 0x9b, 0xeb, 0xc5, 0x18, 0x6b,
+ 0x5b, 0xbf, 0x75, 0x08, 0xe7, 0x59, 0xbd, 0x81, 0x14, 0xf1, 0xb0, 0x60,
+ 0xf8, 0xa0, 0xe2, 0x83, 0x14, 0x6e, 0xa1, 0xda, 0x49, 0xd4, 0x30, 0xb0,
+ 0x23, 0xad, 0xd8, 0xdf, 0xa5, 0xb3, 0xa7, 0xc3, 0x52, 0x54, 0x55, 0x1a,
+ 0x3d, 0xa6, 0xf4, 0xe6, 0x7f, 0x24, 0x9f, 0x68, 0x87, 0x4a, 0x78, 0x14,
+ 0x87, 0x2f, 0x72, 0x7c, 0x59, 0x5d, 0x49, 0x07, 0x1b, 0xc0, 0x6f, 0x04,
+ 0xdf, 0xbd, 0x5b, 0xe1, 0x3e, 0xba, 0xbe, 0x4e, 0x2d, 0x8d, 0xd8, 0x40,
+ 0x7f, 0x87, 0xea, 0xc4, 0x51, 0xa5, 0xb7, 0xab, 0x38, 0xfa, 0x99, 0x9d,
+ 0x7f, 0x56, 0xdd, 0x80, 0x17, 0x05, 0xf7, 0xc4, 0x06, 0x5e, 0x8d, 0x0d,
+ 0x96, 0x62, 0x83, 0x67, 0x63, 0x9e, 0x8f, 0xf9, 0x5d, 0x2c, 0xf9, 0x47,
+ 0xfc, 0x81, 0xe4, 0x35, 0xdc, 0x54, 0x8d, 0xe0, 0x88, 0xe0, 0xa7, 0xb1,
+ 0x81, 0xd1, 0x98, 0xdf, 0xfe, 0x5f, 0x9d, 0xb7, 0x94, 0xc6, 0x1d, 0x38,
+ 0xb9, 0x5e, 0xe7, 0xff, 0x05, 0x13, 0xac, 0xc8, 0xbd, 0x66, 0x27, 0x9a,
+ 0x56, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
+ 0x82};
+unsigned int image_note_len = 1201;
diff --git a/src/image/note.h b/src/image/note.h
new file mode 100644
index 0000000..dda5ade
--- /dev/null
+++ b/src/image/note.h
@@ -0,0 +1,2 @@
+extern unsigned char image_note[];
+extern unsigned int image_note_len;
diff --git a/src/image/note.png b/src/image/note.png
new file mode 100644
index 0000000..484a9ea
Binary files /dev/null and b/src/image/note.png differ
diff --git a/src/image/warning.c b/src/image/warning.c
new file mode 100644
index 0000000..f757399
--- /dev/null
+++ b/src/image/warning.c
@@ -0,0 +1,100 @@
+unsigned char image_warning[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20,
+ 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x04,
+ 0x59, 0x49, 0x44, 0x41, 0x54, 0x58, 0x85, 0xbd, 0x97, 0x5d, 0x68, 0x5b,
+ 0x65, 0x18, 0xc7, 0x7f, 0x69, 0xd2, 0xb4, 0x26, 0xce, 0x94, 0xb6, 0x69,
+ 0xeb, 0xec, 0x40, 0xc5, 0x75, 0xea, 0x44, 0x59, 0x41, 0xa7, 0xa0, 0x52,
+ 0x10, 0xbd, 0x1c, 0xde, 0x89, 0x53, 0x41, 0x50, 0x1c, 0x6c, 0xb0, 0x2b,
+ 0xf5, 0x42, 0x04, 0x15, 0xc4, 0x1b, 0x51, 0x14, 0x64, 0x77, 0xd3, 0x81,
+ 0xe8, 0x9c, 0xf5, 0xa2, 0x75, 0xb3, 0x73, 0xd2, 0x8b, 0x95, 0xb6, 0x5b,
+ 0xbb, 0x8e, 0xae, 0x96, 0xc6, 0x35, 0x75, 0xa6, 0x0d, 0xeb, 0xea, 0x9a,
+ 0xd3, 0xe6, 0xa3, 0xe7, 0x23, 0x39, 0xdf, 0x5e, 0xbc, 0xa7, 0x59, 0x29,
+ 0x5d, 0x9a, 0x64, 0xad, 0x2f, 0x1c, 0x72, 0xf2, 0x9e, 0xe7, 0xcd, 0xff,
+ 0xf7, 0x3c, 0xef, 0x7b, 0x9e, 0xe7, 0x89, 0x9f, 0xcd, 0xc7, 0x4e, 0xe0,
+ 0x0b, 0xe0, 0x17, 0xe0, 0x65, 0xe0, 0x51, 0xe0, 0x6e, 0x20, 0x0d, 0x28,
+ 0x65, 0xac, 0x2f, 0x39, 0x7c, 0x25, 0x9e, 0xdd, 0x03, 0xbc, 0xdb, 0xb9,
+ 0xe7, 0xc1, 0x0f, 0x3e, 0x39, 0xf8, 0x9a, 0xbf, 0xab, 0xa3, 0x83, 0x4c,
+ 0x4a, 0xe2, 0x9f, 0x64, 0x92, 0xa9, 0x44, 0x92, 0xb3, 0x57, 0xaf, 0xd2,
+ 0x17, 0x8f, 0xff, 0x0d, 0x0c, 0x01, 0xc3, 0xc0, 0x20, 0x70, 0x0d, 0x70,
+ 0xee, 0x14, 0x20, 0x08, 0xbc, 0xd3, 0x1e, 0x8d, 0x7e, 0xfc, 0xd9, 0xa1,
+ 0xb7, 0x9a, 0x0e, 0x3c, 0xbd, 0x9f, 0x48, 0x20, 0x00, 0xf9, 0x3c, 0xa8,
+ 0x1a, 0xc8, 0x0a, 0x28, 0x1a, 0x6e, 0xa1, 0x80, 0x94, 0x49, 0x33, 0x2b,
+ 0x2d, 0x33, 0x2d, 0x49, 0x9c, 0xbf, 0x7e, 0x9d, 0x13, 0xb1, 0x58, 0x0a,
+ 0x78, 0x06, 0x48, 0x94, 0x0b, 0x10, 0x58, 0xf7, 0xbd, 0x19, 0xb8, 0xf0,
+ 0xe5, 0xd1, 0xc3, 0xbb, 0x5f, 0x7d, 0xe9, 0x45, 0xda, 0x22, 0x11, 0xb0,
+ 0x4c, 0xd0, 0x8d, 0x0d, 0xc9, 0x5b, 0x42, 0x61, 0x5a, 0x76, 0xd6, 0xb1,
+ 0x2f, 0x1a, 0xa5, 0x19, 0x38, 0x11, 0x8b, 0x99, 0xc0, 0x5c, 0xb9, 0xe2,
+ 0x1b, 0x01, 0x64, 0x80, 0xd0, 0x1b, 0x3e, 0x68, 0x9e, 0x4b, 0x42, 0x6b,
+ 0x2b, 0x34, 0x44, 0x4a, 0xfe, 0xc0, 0x42, 0x36, 0x4b, 0xcf, 0xd0, 0x10,
+ 0x13, 0xb1, 0x18, 0x40, 0x2f, 0x15, 0x6e, 0xc1, 0x7a, 0x00, 0x1b, 0xe8,
+ 0x99, 0x8a, 0x4f, 0x1f, 0xe9, 0xca, 0x65, 0xc4, 0x8c, 0xdf, 0x87, 0x7b,
+ 0xef, 0x7d, 0xd0, 0xd8, 0x0c, 0xe1, 0x30, 0x3e, 0x5c, 0x61, 0xe8, 0x38,
+ 0x8c, 0xc6, 0x67, 0xe8, 0xef, 0xee, 0xc6, 0x07, 0x24, 0x85, 0x75, 0x6f,
+ 0x25, 0xe2, 0x1b, 0x01, 0x00, 0xf4, 0x9e, 0x5f, 0x58, 0x3c, 0xd2, 0xd5,
+ 0xd6, 0x0a, 0x80, 0x6b, 0x98, 0xb8, 0x89, 0x59, 0xdc, 0x78, 0x1c, 0xc7,
+ 0xb4, 0x70, 0x03, 0x41, 0x9c, 0x48, 0x23, 0xa7, 0xa6, 0xe3, 0xcc, 0x0d,
+ 0x0f, 0x0b, 0x1b, 0xe0, 0x0f, 0x90, 0x81, 0x81, 0x4a, 0x01, 0x6a, 0x36,
+ 0x98, 0x1b, 0x38, 0x36, 0x19, 0xcb, 0xc9, 0x96, 0x89, 0x6b, 0x5b, 0xb8,
+ 0xb6, 0x8d, 0x6b, 0x1a, 0x38, 0xba, 0x81, 0x53, 0x28, 0x60, 0xa7, 0x97,
+ 0xb9, 0x79, 0x65, 0xb4, 0x28, 0x5e, 0x03, 0x64, 0xc5, 0xba, 0xdf, 0x00,
+ 0x7d, 0x2b, 0x00, 0x0c, 0x09, 0x4e, 0xc7, 0x96, 0xd2, 0xb8, 0x96, 0x8d,
+ 0x6b, 0x58, 0x9e, 0xb8, 0x81, 0x53, 0xd0, 0xb1, 0x65, 0x95, 0x85, 0x6c,
+ 0xae, 0x68, 0x1c, 0x00, 0xe6, 0xc5, 0x6d, 0xc5, 0xe1, 0xbf, 0x1d, 0x00,
+ 0x40, 0xcf, 0x85, 0xd4, 0x22, 0x8e, 0x69, 0xe0, 0x18, 0x05, 0xe1, 0x79,
+ 0x5e, 0xc3, 0x56, 0x65, 0x6c, 0x4d, 0x65, 0x5e, 0xd6, 0x8b, 0x8b, 0xfd,
+ 0xc0, 0x88, 0x58, 0x73, 0x76, 0x2b, 0x01, 0xce, 0x7d, 0x3b, 0x1e, 0xb3,
+ 0x35, 0xad, 0x80, 0xad, 0x19, 0xd8, 0xf9, 0x02, 0xb6, 0xaa, 0x61, 0x69,
+ 0x3a, 0x56, 0x4e, 0x25, 0x29, 0x49, 0x80, 0xf0, 0x7e, 0x05, 0x98, 0x87,
+ 0x73, 0x40, 0xee, 0x36, 0xbf, 0x55, 0x15, 0x80, 0x12, 0x83, 0xbe, 0x78,
+ 0x3a, 0x8d, 0x9d, 0x57, 0xb1, 0x55, 0x0d, 0x5b, 0x55, 0xb0, 0x73, 0x2a,
+ 0x59, 0x5d, 0x47, 0xf3, 0x16, 0x06, 0x81, 0x1b, 0xc2, 0xfe, 0xd7, 0x6a,
+ 0xc4, 0x4b, 0x01, 0x00, 0xf4, 0x8c, 0xa6, 0xb2, 0xd8, 0xb2, 0x27, 0xae,
+ 0x1a, 0x38, 0xba, 0x4e, 0x8a, 0x5b, 0xde, 0x07, 0x81, 0xf1, 0x6d, 0x04,
+ 0x38, 0xf3, 0x73, 0x22, 0x81, 0xae, 0xe4, 0x8b, 0xe2, 0x8e, 0x24, 0xf1,
+ 0xaf, 0x74, 0xcb, 0x7b, 0x05, 0x98, 0x84, 0x31, 0x8a, 0xe7, 0x70, 0x6b,
+ 0x01, 0x52, 0x83, 0x30, 0x90, 0x90, 0x65, 0x6c, 0x4f, 0xdc, 0x41, 0x84,
+ 0x3c, 0x00, 0xd4, 0x51, 0x0c, 0x7f, 0x55, 0xa7, 0xbf, 0x1c, 0x00, 0x80,
+ 0xde, 0x2b, 0x92, 0x54, 0x14, 0xcf, 0x23, 0xde, 0xf9, 0x5a, 0x0f, 0x60,
+ 0xf2, 0x7f, 0x00, 0xe8, 0x39, 0x8d, 0x48, 0xee, 0x2e, 0x20, 0x21, 0x5e,
+ 0xbb, 0x7a, 0x40, 0x03, 0x06, 0x45, 0xf9, 0xfd, 0x6b, 0x3b, 0x01, 0x66,
+ 0xfb, 0x60, 0xe2, 0x86, 0x07, 0xb0, 0x84, 0xd8, 0xfb, 0x20, 0x30, 0x23,
+ 0x9e, 0x57, 0x5c, 0x7c, 0x2a, 0x05, 0x00, 0xe8, 0x9d, 0xf2, 0x6e, 0x16,
+ 0x11, 0xde, 0xcf, 0x00, 0xc7, 0x84, 0xe7, 0x9f, 0xdf, 0x89, 0x78, 0xb9,
+ 0x00, 0xbf, 0xf7, 0x03, 0x16, 0xa2, 0x56, 0x5f, 0x43, 0xf4, 0x67, 0xc0,
+ 0x19, 0x44, 0x01, 0xda, 0x56, 0x80, 0x5d, 0xc0, 0x71, 0x33, 0x0a, 0xd3,
+ 0x88, 0x36, 0x27, 0x09, 0x7c, 0x05, 0xbc, 0x02, 0xef, 0x03, 0x97, 0x3c,
+ 0x9b, 0xaa, 0x47, 0xa9, 0x9e, 0x30, 0x04, 0x5c, 0xfa, 0xbe, 0xbd, 0x7d,
+ 0x6f, 0x30, 0x0c, 0x3f, 0xc4, 0xe7, 0x89, 0x00, 0x6f, 0x22, 0x0e, 0xe0,
+ 0x32, 0xa2, 0x09, 0x3c, 0x0e, 0x31, 0xe0, 0x29, 0x6f, 0xba, 0xe2, 0xe1,
+ 0x2f, 0xf1, 0xec, 0xe8, 0x47, 0xd1, 0xe8, 0xeb, 0x6f, 0xef, 0x6a, 0xa2,
+ 0xb1, 0x73, 0x3f, 0xf1, 0x86, 0x06, 0xde, 0x6b, 0xdc, 0x41, 0xd0, 0x92,
+ 0x30, 0x35, 0x30, 0x10, 0xad, 0x71, 0x3d, 0xb4, 0x4c, 0x8b, 0xdd, 0xb9,
+ 0x58, 0x0d, 0x40, 0xa9, 0x2d, 0x38, 0xf8, 0x42, 0x63, 0x1d, 0xf5, 0x7e,
+ 0x3f, 0xed, 0xcf, 0x3d, 0xcf, 0xa7, 0x3f, 0x75, 0xd3, 0xfc, 0xf0, 0x23,
+ 0xd4, 0x22, 0x12, 0x51, 0x8d, 0x77, 0x75, 0x78, 0xb6, 0xd5, 0x88, 0xc3,
+ 0xc6, 0x1d, 0xd1, 0xea, 0x78, 0xac, 0x89, 0x20, 0x05, 0xdb, 0x26, 0x34,
+ 0x31, 0x4e, 0x58, 0x51, 0xc0, 0xef, 0xc3, 0x68, 0xd9, 0x43, 0x86, 0x34,
+ 0xae, 0x97, 0x9c, 0x1a, 0x3d, 0xdb, 0xed, 0x00, 0x60, 0xc5, 0x34, 0x48,
+ 0x6b, 0xb5, 0xb8, 0x23, 0xc3, 0x04, 0xc7, 0x46, 0x28, 0x18, 0x36, 0x2a,
+ 0x26, 0xbe, 0x1d, 0x75, 0xf8, 0x88, 0x62, 0x4b, 0x12, 0xa1, 0x6a, 0x95,
+ 0xcb, 0x00, 0x98, 0x8a, 0xcb, 0x7a, 0xa7, 0x1f, 0x50, 0xac, 0x20, 0xb5,
+ 0x01, 0x30, 0x2c, 0xc8, 0x99, 0x06, 0x4b, 0xb2, 0x4e, 0x4e, 0x92, 0x90,
+ 0x29, 0x46, 0x40, 0x42, 0x64, 0x68, 0x13, 0xb8, 0x0b, 0x68, 0x58, 0x77,
+ 0x45, 0xbc, 0xcf, 0xd5, 0x02, 0x7a, 0x19, 0x28, 0x6c, 0x06, 0xf0, 0x63,
+ 0xbf, 0x24, 0x75, 0x46, 0x88, 0x12, 0xaa, 0xd3, 0xf1, 0x23, 0x72, 0x81,
+ 0xa2, 0x43, 0x46, 0x92, 0x58, 0x02, 0xda, 0x28, 0xe6, 0xe1, 0x3f, 0x81,
+ 0x43, 0x1e, 0xc8, 0x03, 0x9b, 0x38, 0xfd, 0x2c, 0xf0, 0x24, 0xa2, 0x8a,
+ 0x5e, 0xde, 0xf4, 0x35, 0x3c, 0x0c, 0x7b, 0xf7, 0x21, 0x0e, 0x9c, 0x8d,
+ 0x28, 0x48, 0x2b, 0x40, 0x14, 0x91, 0x9a, 0x3f, 0x14, 0x09, 0xf2, 0x1b,
+ 0x8f, 0xaf, 0x92, 0x91, 0x03, 0x4e, 0x96, 0x02, 0x00, 0x91, 0x64, 0xc6,
+ 0x0e, 0x40, 0xeb, 0x6e, 0x44, 0xb8, 0xc3, 0x88, 0xe4, 0x91, 0x00, 0xbe,
+ 0x16, 0xe2, 0xdf, 0x51, 0x79, 0x3b, 0x96, 0x03, 0x4e, 0x02, 0xd9, 0xcd,
+ 0x00, 0x00, 0x1e, 0x12, 0x5a, 0x3c, 0x81, 0x88, 0x3a, 0xc0, 0x4d, 0x44,
+ 0xd8, 0x2f, 0x72, 0xcb, 0x73, 0x85, 0xf2, 0xb6, 0xa0, 0x28, 0x0e, 0xa5,
+ 0x33, 0xe1, 0xda, 0x51, 0x0b, 0x3c, 0x0e, 0xdc, 0xef, 0x41, 0x84, 0xbd,
+ 0x79, 0xd5, 0x83, 0x99, 0x43, 0xb4, 0x07, 0x6b, 0x0f, 0xe1, 0xea, 0xc1,
+ 0x5b, 0x7b, 0xb9, 0xc0, 0x29, 0x8a, 0x7f, 0x25, 0xe0, 0x3f, 0xb6, 0x7a,
+ 0xe5, 0x24, 0x88, 0x3b, 0xb4, 0xf1, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
+ 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82};
+unsigned int image_warning_len = 1170;
diff --git a/src/image/warning.h b/src/image/warning.h
new file mode 100644
index 0000000..32026f4
--- /dev/null
+++ b/src/image/warning.h
@@ -0,0 +1,2 @@
+extern unsigned char image_warning[];
+extern unsigned int image_warning_len;
diff --git a/src/image/warning.png b/src/image/warning.png
new file mode 100644
index 0000000..3e8c434
Binary files /dev/null and b/src/image/warning.png differ
diff --git a/src/seed.c b/src/seed.c
index d89d726..a2bbd54 100644
--- a/src/seed.c
+++ b/src/seed.c
@@ -42,9 +42,18 @@ int action_seed(int argc, char** argv) {
fprintf(f, "\n");
fprintf(f, "\n");
fprintf(f, " \n");
- fprintf(f, " \n");
+ fprintf(f, " Welcome to template\n");
fprintf(f, " \n");
fprintf(f, " \n");
+ fprintf(f, " \n");
+ fprintf(f, " Please read this!\n");
+ fprintf(f, " \n");
+ fprintf(f, " \n");
+ fprintf(f, " Please read this!\n");
+ fprintf(f, " \n");
+ fprintf(f, " \n");
+ fprintf(f, " Please read this!\n");
+ fprintf(f, " \n");
fprintf(f, " \n");
fprintf(f, " \n");
fprintf(f, " You have successfully generated and rendered a website using Taiga - static website generator.\n");