get rid of ActiveModel dependency