We have been together a little over a year. I am currently 14 weeks pregnant. We just moved in together. Yesterday my boyfriend got extremely drunk and was talking nonsense. When he drinks he does this and gets pretty mean. He always tells me that he's an a-hole but thats "the way he is". Everything was fine until he started an argument with me over how I discipline my four year old and that he's spoiled. My son is not a bad kid, of course I got defensive. It set me off edge and I poured his beer out which made him completely freak out. When I reached into the fridge he slammed the door into my arm full force. I now have a huge knot and bruise. I know that I provoked this behavior but it scared me and I left after he tried to block me from leaving. He texted me breaking up with me. I went back and asked how he justified breaking up with me over that. Out of anger I went back to pour his beer out (I know that was a stupid choice). He started to grab me, push me, and backed me up into the stove. He was inches from my face screaming. I just closed my eyes and somehow ended up punching him in the face. I didn't mean to, it just happened. I've never hit anyone before much less someone I love. He had been begging me earlier that day to hit him for being an a-hole, which was just his drunkenness talking. I know nothing justifies what I did and I feel awful. It stunned him enough to back up so I could get away. He continued to scream, now more about me hitting him. How he was going to call the cops on me. I was legitimately scared and just reacted, I don't know why, I'm not a violent person. He told me not to come back or he would call the cops. He said that I'm lucky he didn't hit me back because I would be dead. I don't know what to do at this point. Any advice? He hasn't spoken to me today since being sober. And I'm scared to say anything. I know I need to apologize, and I want to. He's already told his mom who he said is done with me now too. What do I do?