Added parts of input implementation