improved repl