fully functioning quantity input