updated input stuff