jump fix + abstraction