replaced input getting function with advanced