improved it.

More patterns added.