add interface to allow disk input