multi derivation for lua oop