 //holds the current upload
 File fsUploadFile;
 
+const char textplainHEADER[] PROGMEM = "text/plain";
+const char texthtmlHEADER[] PROGMEM = "text/html";
+
 void setupWebServer() {
 
   ////////////////////////////////////////////////////////////////////////////////////
   //the web interface pages alphabetically
 
   //handle the index page
-  if ( SPIFFS.exists( "/index.htm" ) ) {
+  if ( SPIFFS.exists( F( "/index.htm" ) ) ) {
     webServer.serveStatic( "/", SPIFFS, "/index.htm" );
     webServer.serveStatic( "/index.htm", SPIFFS, "/index.htm" );
   } else {
     webServer.on( "/", []() {
-      webServer.send( 200, "text/plain", "No index.htm present during boot.\nUpload index.htm and reset controller" );
+      webServer.send( 200, FPSTR( textplainHEADER ), F( "No index.htm present during boot.\nUpload index.htm and reset controller" ) );
     });
   }
 
   //handle the filemanager
-  if ( SPIFFS.exists( "/filemanager.htm" ) ) {
+  if ( SPIFFS.exists( F( "/filemanager.htm" ) ) ) {
     webServer.serveStatic( "/filemanager", SPIFFS, "/filemanager.htm" );
     webServer.serveStatic( "/filemanager.htm", SPIFFS, "/filemanager.htm" );
   } else {
     webServer.on( "/filemanager", []() {
-      webServer.send( 200, "text/plain", "No filemanager present during boot.\nUpload index.htm and reset controller" );
+      webServer.send( 200, FPSTR( textplainHEADER ), F( "No filemanager present during boot.\nUpload index.htm and reset controller" ) );
     });
   }
 
   //handle the timer editor
   webServer.on( "/editor", []() {
-    webServer.send( 200, "text/html", "editor" );
+    webServer.send( 200, FPSTR( texthtmlHEADER ), F( "editor" ) );
   });
 
   //handle the file editor


  webServer.on( "/api/cleareeprom", []() {
    clearEEPROM();
    webServer.send( 200, "text/plain", "EEPROM cleared" );
  });

  webServer.on( "/api/diskspace", []() {
    FSInfo fs_info;
    SPIFFS.info(fs_info);
    size_t diskSpace = fs_info.totalBytes - fs_info.usedBytes;
    webServer.send( 200, "text/plain", String( diskSpace ) );
  });

  webServer.on( "/api/formatspiffs", []() {
    OLED.clear();
    OLED.setTextAlignment( TEXT_ALIGN_CENTER );
    OLED.setFont( ArialMT_Plain_16 );
    OLED.drawString( 64, 10, F("Formatting" ) );
    OLED.drawString( 64, 30, F("Please wait..." ) );
    OLED.display();
    SPIFFS.format();
    webServer.send( 200, "text/plain", "SPIFFS disk formatted" );
  });

  webServer.on( "/api/files", []() {


  //handle the setup page
  webServer.on( "/setup", []() {
    webServer.send( 200, FPSTR( texthtmlHEADER ), F( "setup page" ) );
  });

  /////////////////////////////////////////////////////////////////////////////////////
