updated DataInput to use interpolation