Refactor: introduce a new datatype and push some information to a new place