public function inStep($value, $offset)
    {
        $parts = \explode('/', $offset, 2);

        if (empty($parts[1])) {
            return false;
        }

        if (\strpos($offset, '*/') !== false || \strpos($offset, '0/') !== false) {
            return $value % $parts[1] === 0;
        }

        $parts    = \explode('/', $offset, 2);
        $subparts = \explode('-', $parts[0], 2) + [1 => $value];

        return $this->inStepRange($value, $subparts[0], $subparts[1], $parts[1]);
    }