use intersect when filling.
Merge branch '4.0'