type inherit
resolving speedup
cleanup