third compile debug pass

Must pay more attention to reflect changes correctly