Cleanup
Improved support for negative offsets