Merge to v5.0 original commit: 06f65546e9dd86fc836f3788e0fb152761255fec
original commit: 7c02baafc7cfec86cbf49b79a938d8516ad3243d