fixed context issue and meta, modulePartial.name, func.name order is reimplemented.
Stopped modifying the global functions!