add patch support