@@ -0,0 +1,1868 @@
+package com.cronutils;%0A%0Aimport com.cronutils.model.Cron;%0Aimport com.cronutils.model.CronType;%0Aimport com.cronutils.model.definition.CronDefinitionBuilder;%0Aimport com.cronutils.model.time.ExecutionTime;%0Aimport com.cronutils.parser.CronParser;%0Aimport org.junit.Ignore;%0Aimport org.junit.Test;%0A%0Aimport java.time.LocalDate;%0Aimport java.time.LocalTime;%0Aimport java.time.ZoneOffset;%0Aimport java.time.ZonedDateTime;%0Aimport java.util.Optional;%0A%0Aimport static org.junit.Assert.assertEquals;%0Aimport static org.junit.Assert.assertTrue;%0A%0A@Ignore%0Apublic class Issue402Test %7B%0A    @Test%0A    public void test() %7B%0A        CronParser parser = new CronParser( CronDefinitionBuilder.instanceDefinitionFor(CronType.QUARTZ));%0A        final Cron cron = parser.parse(%220 0 0 1 3 ? 2001/2%22);%0A//        CronDescriptor cd = CronDescriptor.instance(Locale.US);%0A//        System.out.println(cd.describe(cron));%0A%0A        ExecutionTime execution = ExecutionTime.forCron(cron);%0A%0A        LocalDate date = LocalDate.of(2015, 1, 15);%0A        ZonedDateTime currentDateTime = ZonedDateTime.of(date, LocalTime.MIDNIGHT, ZoneOffset.UTC);%0A%0A        Optional%3CZonedDateTime%3E nextExecution = execution.nextExecution(currentDateTime);%0A        assertTrue(nextExecution.isPresent());%0A        assertEquals(ZonedDateTime.of(LocalDate.of(2015, 3, 1), LocalTime.MIDNIGHT, ZoneOffset.UTC), nextExecution.get());%0A%0A        Optional%3CZonedDateTime%3E lastExecution = execution.lastExecution(currentDateTime);%0A        assertTrue(lastExecution.isPresent());%0A        assertEquals(ZonedDateTime.of(LocalDate.of(2013, 3, 1), LocalTime.MIDNIGHT, ZoneOffset.UTC), nextExecution.get());%0A%0A        lastExecution = execution.lastExecution(nextExecution.get());%0A        assertTrue(lastExecution.isPresent());%0A        assertEquals(ZonedDateTime.of(LocalDate.of(2013, 3, 1), LocalTime.MIDNIGHT, ZoneOffset.UTC), nextExecution.get());%0A    %7D%0A%7D%0A

add a test case for the issue