use data middleman