revamping variable types