diff --git a/doc/topics/cloud/features.rst b/doc/topics/cloud/features.rst index 6d63862035..370313a5bf 100644 --- a/doc/topics/cloud/features.rst +++ b/doc/topics/cloud/features.rst @@ -34,26 +34,28 @@ Standard Features ================= These are features that are available for almost every provider. -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -| |AWS |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Softlayer|Softlayer| -| |(Legacy)| |Ocean | | | | | | |(Legacy) | | |Hardware | -+=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=========+=========+ -|Query |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|Full Query |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|Selective Query |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|List Sizes |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|List Images |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|List Locations |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|create |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes |Yes |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|destroy |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ +.. container:: scrollable + + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + | |AWS |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Softlayer|Softlayer| + | |(Legacy)| |Ocean | | | | | | |(Legacy) | | |Hardware | + +=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=========+=========+ + |Query |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |Full Query |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |Selective Query |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |List Sizes |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |List Images |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |List Locations |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |create |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes |Yes |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |destroy |Yes |Yes |Yes |Yes|Yes |Yes |Yes |Yes |Yes |Yes | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ Actions ======= @@ -64,46 +66,48 @@ instance name to be passed in. For example: # salt-cloud -a attach_volume ami.example.com -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|Actions |AWS |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Softlayer|Softlayer| -| |(Legacy)| |Ocean | | | | | | |(Legacy) | | |Hardware | -+=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=========+=========+ -|attach_volume | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|create_attach_volumes |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|del_tags |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|delvol_on_destroy | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|detach_volume | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|disable_term_protect |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|enable_term_protect |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_tags |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|keepvol_on_destroy | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|list_keypairs | | |Yes | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|rename |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|set_tags |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_delvol_on_destroy | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_instance | | |Yes |Yes| | | | |Yes | | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_term_protect | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|start |Yes | | |Yes| |Yes | | |Yes | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|stop |Yes | | |Yes| |Yes | | |Yes | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|take_action | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ +.. container:: scrollable + + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |Actions |AWS |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Softlayer|Softlayer| + | |(Legacy)| |Ocean | | | | | | |(Legacy) | | |Hardware | + +=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=========+=========+ + |attach_volume | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |create_attach_volumes |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |del_tags |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |delvol_on_destroy | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |detach_volume | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |disable_term_protect |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |enable_term_protect |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_tags |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |keepvol_on_destroy | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |list_keypairs | | |Yes | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |rename |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |set_tags |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_delvol_on_destroy | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_instance | | |Yes |Yes| | | | |Yes | | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_term_protect | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |start |Yes | | |Yes| |Yes | | |Yes | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |stop |Yes | | |Yes| |Yes | | |Yes | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |take_action | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ Functions ========= @@ -114,76 +118,77 @@ require the name of the provider to be passed in. For example: # salt-cloud -f list_images my_digitalocean -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|Functions |AWS |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Softlayer|Softlayer| -| |(Legacy)| |Ocean | | | | | | |(Legacy) | | |Hardware | -+=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=========+=========+ -|block_device_mappings |Yes | | | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|create_keypair | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|create_volume | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|delete_key | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|delete_keypair | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|delete_volume | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_image | | |Yes | | |Yes | | |Yes | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_ip | |Yes | | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_key | |Yes | | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_keyid | | |Yes | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_keypair | |Yes | | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_networkid | |Yes | | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_node | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_password | |Yes | | | | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_size | | |Yes | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_spot_config | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|get_subnetid | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|iam_profile |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|import_key | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|key_list | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|keyname |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|list_availability_zones| | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|list_custom_images | | | | | | | | | | | |Yes | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|list_keys | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|list_vlans | | | | | | | | | | | |Yes |Yes | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|rackconnect | | | | | | | |Yes | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|reboot | | | |Yes| |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|reformat_node | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|securitygroup |Yes | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|securitygroupid | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_image | | | |Yes| | | | |Yes | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_key | | | | | |Yes | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_keypair | | |Yes |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ -|show_volume | | | |Yes| | | | | | | | | | -+-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ +.. container:: scrollable + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |Functions |AWS |CloudStack|Digital|EC2|GoGrid|JoyEnt|Linode|OpenStack|Parallels|Rackspace|Saltify|Softlayer|Softlayer| + | |(Legacy)| |Ocean | | | | | | |(Legacy) | | |Hardware | + +=======================+========+==========+=======+===+======+======+======+=========+=========+=========+=======+=========+=========+ + |block_device_mappings |Yes | | | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |create_keypair | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |create_volume | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |delete_key | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |delete_keypair | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |delete_volume | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_image | | |Yes | | |Yes | | |Yes | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_ip | |Yes | | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_key | |Yes | | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_keyid | | |Yes | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_keypair | |Yes | | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_networkid | |Yes | | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_node | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_password | |Yes | | | | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_size | | |Yes | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_spot_config | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |get_subnetid | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |iam_profile |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |import_key | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |key_list | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |keyname |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |list_availability_zones| | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |list_custom_images | | | | | | | | | | | |Yes | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |list_keys | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |list_vlans | | | | | | | | | | | |Yes |Yes | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |rackconnect | | | | | | | |Yes | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |reboot | | | |Yes| |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |reformat_node | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |securitygroup |Yes | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |securitygroupid | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_image | | | |Yes| | | | |Yes | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_key | | | | | |Yes | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_keypair | | |Yes |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+ + |show_volume | | | |Yes| | | | | | | | | | + +-----------------------+--------+----------+-------+---+------+------+------+---------+---------+---------+-------+---------+---------+