 /* Drawing Resources */
 bool draw_totalcount_frame(SSD1306 *display, SSD1306UiState* state, int x, int y);
 bool draw_currentconsumption_frame(SSD1306 *display, SSD1306UiState* state, int x, int y);
+bool draw_menu_frame(SSD1306 *display, SSD1306UiState* state, int x, int y);
 bool msOverlay(SSD1306 *display, SSD1306UiState* state);
 
 float get_consumption_from_time_since_last_pulse(long timeSinceLastPulse);

    }
    
    if(pulse_triggered == true) {
        storage.pulse_count_current_kwh++;
        if(storage.pulse_count_current_kwh == PULSES_PER_KWH) {
          storage.consumption_total++;

  if (remainingTimeBudget > 0) {
    yield();
    if(b1_pressed == true) {
      //handle b1
      ui.setFrames(others, 2);
      ui.disableAutoTransition();
      b1_pressed = false;
      yield();
    }
    
    if(b2_pressed == true) {
      //handle b2
      ui.nextFrame();
      b2_pressed = false;
      yield();
    }
    
    if(b3_pressed == true) {
      //handle b3
      ui.previousFrame();
      b3_pressed = false;
      yield();
    }
    
    if(b4_pressed = true) {
      //handle b4
      ui.setFrames(frames, 2);
      ui.enableAutoTransition();
      b4_pressed = false;
      yield();
    }
