We develop a method to match estimates of primaries and multiples to data containing both. It works with prestack data in either data space or image space and addresses the well-known issue of cross-talk between the estimates of the primaries and the multiples. The method iteratively computes non-stationary filters with micro-patches and its cost is a negligible fraction of the cost of computing the estimates of the primaries and multiples with SRME. We show, with several synthetic and real data examples, that the matched estimates of both primaries and multiples are essentially free of cross-talk. We also apply the method to the separation of ground-roll and body waves and show that most residual ground-roll contaminating the estimate of the body waves can be eliminated.