def METHOD_NAME():
    argument_spec = rax_argument_spec()
    argument_spec.update(
        dict(
            name=dict(required=True),
            public_key=dict(),
            state=dict(default='present', choices=['absent', 'present']),
        )
    )
    module = AnsibleModule(
        argument_spec=argument_spec,
        required_together=rax_required_together(),
    )
    if not HAS_PYRAX:
        module.fail_json(msg='pyrax is required for this module')
    name = module.params.get('name')
    public_key = module.params.get('public_key')
    state = module.params.get('state')
    setup_rax_module(module, pyrax)
    rax_keypair(module, name, public_key, state)