def ref(logical_name):
    """The intrinsic function Ref returns the value of the specified parameter or resource.

    When you are declaring a resource in a template and you need to
    specify another template resource by name, you can use the Ref to refer
    to that other resource. In general, Ref returns the name of the
    resource. For example, a reference to an
    AWS::AutoScaling::AutoScalingGroup returns the name of that Auto
    Scaling group resource.

    For some resources, an identifier is returned that has another
    significant meaning in the context of the resource. An AWS::EC2::EIP
    resource, for instance, returns the IP address, and an
    AWS::EC2::Instance returns the instance ID.

    Args:
        logical_name: The logical name of the resource or parameter you want
            to dereference.

    Returns:
        * When you specify a parameter's logical name, it returns the value
            of the parameter.
        * When you specify a resource's logical name, it returns a value
            that you can typically use to refer to that resource.

    .. note:: You can also use Ref to add values to Output messages.

    """
    return {'Ref': logical_name}