Type mismatch

It is resolved, by magic.

I remove unused function/macros/events; re-write some of them, it work like a charm now.