pass original text to transformations
refactor: introduce Context object that contains original text and its position