fix: detect datatype