bug1350564, bug1404787, bug1411957, bug1047098, bug1404105, bug1415133, bug1355576, bug1382366, bug1414425, bug1409951, bug1415441, bug1418922, bug1382358, bug1414945, bug1423159, bug1411745, bug1411708, bug1412420