* made data types more flexible