Resubmit the patch to V4

Ok, the patch has been resubmit.