fixed xrange. todo constructor