you can write it using `find`
```
def find(service_name, params={})
  service_type = create_service_type(service_name, params[:protocol])
  discover_service(service_type, params[:scope]).find do |slp_response|
     Service.new(service_name, slp_response, params).match(params)
  end
end
```

BTW api where you twice place params (in `new` and `match` looks strange for me.