new version, filling with pattern