Domestic markets continued to defy weak global peers by gaining for sixth consecutive day. The BSE Sensex ended at 45,608.51, up 181.54 points or 0.40%. The 50-share index Nifty closed at 13,392.95, up 37.20 points or 0.28%.