Data type refactorized