using ActiveSupport::Concern