Do you think this should be implemented in classes?