Two necessary conditions for strategy-proofness : on what domains are they also sufficient?