change data type and adapt interfaces