@Override
    public <R> R query(TemporalQuery<R> query) {
        if (query == TemporalQueries.zoneId() || query == TemporalQueries.zone()) {
            return (R) zoneId;
        } else if (query.toString().contains(DateTimeFormatterBuilder.class.getCanonicalName())) {
            return (R) zoneId;
        } else {
            return offsetTime.query(query);
        }
    }
@Test
    void query() {
        assertEquals(zoneId, zoneTime.query(TemporalQueries.zoneId()));
        assertEquals(zoneId, zoneTime.query(TemporalQueries.zone()));
        assertEquals(offsetTime.query(TemporalQueries.localTime()), zoneTime.query(TemporalQueries.localTime()));
        assertEquals(offsetTime.query(TemporalQueries.offset()), zoneTime.query(TemporalQueries.offset()));
    }