Refactored to separate libs
Fixed trait to method