private static FactHandle insertAndFire(KieSession kieSession, SimpleEvent simpleEvent) {
   LOGGER.debug("Inserting event and firing rules.");
   PseudoClockScheduler clock = kieSession.getSessionClock();
   long currentClockTime = clock.getCurrentTime();
   long deltaTime = simpleEvent.getTimestamp() - currentClockTime;
   if (deltaTime > 0) {
     clock.advanceTime(deltaTime, TimeUnit.MILLISECONDS);
     LOGGER.debug("Current time: " + clock.getCurrentTime());
   }
   FactHandle handle = kieSession.insert(simpleEvent);
   kieSession.fireAllRules();
   LOGGER.debug("Rules fired.");
   return handle;
 }