improved inputreader
inputserver