using patches instead of files