Data input function