/**
  * Run Instances 
  * The RunInstances operation launches a specified number of instances.
  * If Amazon EC2 cannot launch the minimum number AMIs you request, no instances
  * launch. If there is insufficient capacity to launch the maximum number of AMIs
  * you request, Amazon EC2 launches as many as possible to satisfy the requested
  * maximum values.
  * Every instance is launched in a security group. If you do not specify a
  * security group at launch, the instances start in your default security group.
  * For more information on creating security groups, see CreateSecurityGroup.
  * An optional instance type can be specified. For information about instance
  * types, see Instance Types.
  * You can provide an optional key pair ID for each image in the launch request
  * (for more information, see CreateKeyPair). All instances that are created from
  * images that use this key pair will have access to the associated public key at
  * boot. You can use this key to provide secure access to an instance of an image
  * on a per-instance basis. Amazon EC2 public images use this feature to provide
  * secure access without passwords.
  * Important:
  * Launching public images without a key pair ID will leave them inaccessible.
  * The public key material is made available to the instance at boot time by
  * placing it in the openssh_id.pub file on a logical device that is exposed to
  * the instance as /dev/sda2 (the ephemeral store). The format of this file is
  * suitable for use as an entry within ~/.ssh/authorized_keys (the OpenSSH
  * format). This can be done at boot (e.g., as part of rc.local) allowing for
  * secure access without passwords.
  * Optional user data can be provided in the launch request. All instances that
  * collectively comprise the launch request have access to this data For more
  * information, see Instance Metadata.
  * Note:
  * If any of the AMIs have a product code attached for which the user has not
  * subscribed, the RunInstances call will fail.
  * Important:
  * We strongly recommend using the 2.6.18 Xen stock kernel with the c1.medium and
  * c1.xlarge instances. Although the default Amazon EC2 kernels will work, the new
  * kernels provide greater stability and performance for these instance types. For
  * more information about kernels, see Kernels, RAM Disks, and Block Device
  * Mappings.
  * 
  * @see http://docs.amazonwebservices.com/AWSEC2/2008-12-01/DeveloperGuide/ApiReference-Query-RunInstances.html
  * @param mixed $request array of parameters for Amazon_EC2_Model_RunInstancesRequest request
  * or Amazon_EC2_Model_RunInstancesRequest object itself
  * @see Amazon_EC2_Model_RunInstances
  * @return Amazon_EC2_Model_RunInstancesResponse Amazon_EC2_Model_RunInstancesResponse
  *
  * @throws Amazon_EC2_Exception
  */
 public function runInstances($request)
 {
     if (!$request instanceof Amazon_EC2_Model_RunInstancesRequest) {
         require_once 'Amazon/EC2/Model/RunInstancesRequest.php';
         $request = new Amazon_EC2_Model_RunInstancesRequest($request);
     }
     require_once 'Amazon/EC2/Model/RunInstancesResponse.php';
     return Amazon_EC2_Model_RunInstancesResponse::fromXML($this->_invoke($this->_convertRunInstances($request)));
 }
 /**
  * Run Instances 
  * The RunInstances operation launches a specified number of instances.
  * If Amazon EC2 cannot launch the minimum number AMIs you request, no instances
  * launch. If there is insufficient capacity to launch the maximum number of AMIs
  * you request, Amazon EC2 launches as many as possible to satisfy the requested
  * maximum values.
  * Every instance is launched in a security group. If you do not specify a
  * security group at launch, the instances start in your default security group.
  * For more information on creating security groups, see CreateSecurityGroup.
  * An optional instance type can be specified. For information about instance
  * types, see Instance Types.
  * You can provide an optional key pair ID for each image in the launch request
  * (for more information, see CreateKeyPair). All instances that are created from
  * images that use this key pair will have access to the associated public key at
  * boot. You can use this key to provide secure access to an instance of an image
  * on a per-instance basis. Amazon EC2 public images use this feature to provide
  * secure access without passwords.
  * Important:
  * Launching public images without a key pair ID will leave them inaccessible.
  * The public key material is made available to the instance at boot time by
  * placing it in the openssh_id.pub file on a logical device that is exposed to
  * the instance as /dev/sda2 (the ephemeral store). The format of this file is
  * suitable for use as an entry within ~/.ssh/authorized_keys (the OpenSSH
  * format). This can be done at boot (e.g., as part of rc.local) allowing for
  * secure access without passwords.
  * Optional user data can be provided in the launch request. All instances that
  * collectively comprise the launch request have access to this data For more
  * information, see Instance Metadata.
  * Note:
  * If any of the AMIs have a product code attached for which the user has not
  * subscribed, the RunInstances call will fail.
  * Important:
  * We strongly recommend using the 2.6.18 Xen stock kernel with the c1.medium and
  * c1.xlarge instances. Although the default Amazon EC2 kernels will work, the new
  * kernels provide greater stability and performance for these instance types. For
  * more information about kernels, see Kernels, RAM Disks, and Block Device
  * Mappings.
  *   
  * @see http://docs.amazonwebservices.com/AWSEC2/2008-12-01/DeveloperGuide/ApiReference-Query-RunInstances.html      
  * @param mixed $request array of parameters for Amazon_EC2_Model_RunInstances request or Amazon_EC2_Model_RunInstances object itself
  * @see Amazon_EC2_Model_RunInstances
  * @return Amazon_EC2_Model_RunInstancesResponse Amazon_EC2_Model_RunInstancesResponse
  *
  * @throws Amazon_EC2_Exception
  */
 public function runInstances($request)
 {
     require_once 'Amazon/EC2/Model/RunInstancesResponse.php';
     return Amazon_EC2_Model_RunInstancesResponse::fromXML($this->_invoke('RunInstances'));
 }