change to use dataformat