imrpoved overall struct AND new FEATURE TREE