1) support multiple patches