Refactor: marks shouldn't care about where they are