Added allocation methods, redefined VarType