updated, will finish tomorrow