implemented linage