Finished basically everything except indirect calls