Pl attach a workbook to help you. May be with a fake data set
There are a lot of ways to skin this cat, and you're probably better doing a join that chooses a maturity date based on a max last updated or something like that.
However, my approach pivots your 5 maturity columns into 1, converts the completed levels to a number, uses an LOD calc to look for the maximum value for an ID, then converts that back into something more readable.
You may have other columns that make a window calc as appropriate to use.