make it ActiveRecord independent