add fancy input but it is so buggy