Yep, basically:
if(userHasUpdatedPw) { checkPw(hash(pw)) }
else{ checkPw(hash(pw+pw)) } if(userHasUpdatedPw) { checkPw(hash(pw)) }
else{ checkPw(hash(pw+pw)) } if(userHasUpdatedPw) { checkPw(hash(pw)) }
else{ checkPw(hash(assertDoubledAndTakeHalf(pw)))}