Ben Affleck made off with a bigger-than-expected haul at the weekend box office in North America Sunday as his heist thriller “The Town” surprised observers with a strong No. 1 opening. The movie, which Affleck both directed and stars in, earned an estimated $23.8 million during its first three days, distributor Warner Bros. said. It had been expected to open at No. 2 in the $15 million to $20 million range. “The Town” marks the follow-up to Affleck's directing debut, 2007's “Gone Baby Gone,” another crime drama set in his Boston hometown. He did not appear in that film, which made $20 million in its entire North American run. In the new film, he plays the brains among a gang of robbers, who complicates things by falling for a bank teller caught up in one of their heists.