Formalized into Classes