Self patched based on opensource