   bool success;
 
   if (base != EEPROM_PAGE0_BASE && base != EEPROM_PAGE1_BASE) {
-#ifdef SERIAL_DEBUG
-    Serial.println("Out of range erase at "+String(base,HEX));
-#endif
     return false;
   }
 

  
  for (uint32_t offset = 4 ; offset < EEPROM_PAGE_SIZE ; offset+=2) {
    if (GET_HALF_WORD(base+offset) == 0xFFFF) {
#ifdef SERIAL_DEBUG
//      Serial.println("Storing "+String(variable,HEX)+" at "+String(base+offset,HEX)+" with value "+String(value,HEX)+" "+String(variable | ((uint16_t)value<<8),HEX));
#endif
      return writeHalfWord(base+offset, variable | ((uint16_t)value<<8));
    }
  }

#ifdef SERIAL_DEBUG  
  Serial.println("Did not find space on page "+String(base,HEX));
#endif

  uint32_t otherBase = pageBases[1-currentPage];
  // page is full, need to move to other page

  else { // both pages are blank
    currentPage = 1;
  }
  invalid = false;
}

