merge new code from b2g