Now works with negative base values