// Path: src/main/java/org/nameapi/client/services/NameApiBaseCommand.java
// public abstract class NameApiBaseCommand<T, A, R> extends RestBaseCommand<T, A, R> {
// 
//     protected static String CLIENT_VERSION = "NameAPI Java Client 5.0";
// 
//     protected NameApiBaseCommand(@NotNull Class<T> wsdlPortType) {
//         super(wsdlPortType);
//     }
// 
//     @NotNull
//     protected Context getContext(@NotNull ExecutionContext ec) {
//         return ec.getMode().get(NameApiKeys.CONTEXT).get();
//     }
// 
//     @NotNull
//     protected String getApiKey(ExecutionContext ec) {
//         return ec.getMode().get(NameApiKeys.API_KEY).get();
//     }
// 
//     @NotNull
//     protected RestHttpClient makeClient(@NotNull final ExecutionContext ec) {
//         URL baseUrl = makeBaseUrl(ec);
//         return new RestHttpClientImpl.Builder()
//                 .basePath(baseUrl.toExternalForm())
//                 .userAgent(CLIENT_VERSION)
//                 .build();
//     }
// 
// }


import com.google.common.base.Optional;
import com.optimaize.command4j.ExecutionContext;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.nameapi.client.services.NameApiBaseCommand;
import org.nameapi.ontology5.input.entities.person.InputPerson;
import org.nameapi.ontology5.services.riskdetector.RiskDetectorResult;
import java.util.concurrent.Callable;
package org.nameapi.client.services.riskdetector.person;



public class PersonRiskDetectorCommand extends NameApiBaseCommand<RestPort, InputPerson, RiskDetectorResult> {

    private static final String SERVICE_PATH = "/riskdetector/person";

    public PersonRiskDetectorCommand() {
        super(RestPort.class);
    }

// Path: src/main/java/org/nameapi/client/services/NameApiBaseCommand.java
// public abstract class NameApiBaseCommand<T, A, R> extends RestBaseCommand<T, A, R> {
// 
//     protected static String CLIENT_VERSION = "NameAPI Java Client 5.0";
// 
//     protected NameApiBaseCommand(@NotNull Class<T> wsdlPortType) {
//         super(wsdlPortType);
//     }
// 
//     @NotNull
//     protected Context getContext(@NotNull ExecutionContext ec) {
//         return ec.getMode().get(NameApiKeys.CONTEXT).get();
//     }
// 
//     @NotNull
//     protected String getApiKey(ExecutionContext ec) {
//         return ec.getMode().get(NameApiKeys.API_KEY).get();
//     }
// 
//     @NotNull
//     protected RestHttpClient makeClient(@NotNull final ExecutionContext ec) {
//         URL baseUrl = makeBaseUrl(ec);
//         return new RestHttpClientImpl.Builder()
//                 .basePath(baseUrl.toExternalForm())
//                 .userAgent(CLIENT_VERSION)
//                 .build();
//     }
// 
// }


// Path: src/main/java/org/nameapi/client/services/riskdetector/person/PersonRiskDetectorCommand.java
import com.google.common.base.Optional;
import com.optimaize.command4j.ExecutionContext;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.nameapi.client.services.NameApiBaseCommand;
import org.nameapi.ontology5.input.entities.person.InputPerson;
import org.nameapi.ontology5.services.riskdetector.RiskDetectorResult;
import java.util.concurrent.Callable;

package org.nameapi.client.services.riskdetector.person;



public class PersonRiskDetectorCommand extends NameApiBaseCommand<RestPort, InputPerson, RiskDetectorResult> {

    private static final String SERVICE_PATH = "/riskdetector/person";

    public PersonRiskDetectorCommand() {
        super(RestPort.class);
    }

    @Nullable