Replaced customerGroup() with hasGroup()
Fixed a few issues
A few optimizations
minor refactor
Final
memory usage