add sigint handler