merge #15535 with fixes