add mtlu and smal refactoring
mtlu is worked
clean