again, not sure if we should ignore invalid input