code: @Override
      public SimulateCustomPolicyResult simulateCustomPolicy(SimulateCustomPolicyRequest request) {
          request = beforeClientExecution(request);
          return executeSimulateCustomPolicy(request);
      }
docs: <p>
  Simulate how a set of IAM policies and optionally a resource-based policy works with a list of API operations and
  AWS resources to determine the policies' effective permissions. The policies are provided as strings.
  </p>
  <p>
  The simulation does not perform the API operations; it only checks the authorization to determine if the
  simulated policies allow or deny the operations.
  </p>
  <p>
  If you want to simulate existing policies attached to an IAM user, group, or role, use
  <a>SimulatePrincipalPolicy</a> instead.
  </p>
  <p>
  Context keys are variables maintained by AWS and its services that provide details about the context of an API
  query request. You can use the <code>Condition</code> element of an IAM policy to evaluate context keys. To get
  the list of context keys that the policies require for correct simulation, use
  <a>GetContextKeysForCustomPolicy</a>.
  </p>
  <p>
  If the output is long, you can use <code>MaxItems</code> and <code>Marker</code> parameters to paginate the
  results.
  </p>
  
  @param simulateCustomPolicyRequest
  @return Result of the SimulateCustomPolicy operation returned by the service.
  @throws InvalidInputException
  The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
  @throws PolicyEvaluationException
  The request failed because a provided policy could not be successfully evaluated. An additional detailed
  message indicates the source of the failure.
  @sample AmazonIdentityManagement.SimulateCustomPolicy
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/iam-2010-05-08/SimulateCustomPolicy" target="_top">AWS API
  Documentation</a>