add InputReader class