config datatype, and better organization