update 2.x to 40f9de2