added fa mp, refactored some things