added ihac class and tests