More problem surface here.

Some improvements