setでfalseになる件は分からないけど、ほしい動作はaddじゃないのかな。
それと、flagsにfalseを指定している由来はどこから