storing the type is easier below