<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def association_custom(self, association_name, association_resource=None):
 """Custom Indicator association for this resource with resource value. **Example Endpoints URI's** | HTTP | API Endpoint URI's | +========+==========================================================================+ | {base} | /v2/indicators/{indicatorType}/{uniqueId}/associations/{associationName} | | GET | {base}/indicators | | GET | {base}/indicators/{indicatorType} | | DELETE | {base}/indicators/{indicatorType}/{value} | | POST | {base}/indicators/{indicatorType}/{value} | Args: association_name (string):
 The name of the custom association as defined in the UI. association_resource (object):
 An instance of Resource for an Indicator or sub type. """

        resource = self.copy()
        association_api_branch = self.tcex.indicator_associations_types_data.get(
            association_name, {}
        ).get('apiBranch')
        if association_api_branch is None:
            self.tcex.handle_error(305, [association_name])

        # handle URL difference between Custom Associations and File Actions
        custom_type = 'associations'
        file_action = self.tcex.utils.to_bool(
            self.tcex.indicator_associations_types_data.get(association_name, {}).get('fileAction')
        )
        if file_action:
            custom_type = 'actions'

        resource._request_entity = 'indicator'
        if association_resource is not None:
            resource._request_uri = '{}/{}/{}/{}'.format(
                resource._request_uri,
                custom_type,
                association_api_branch,
                association_resource.request_uri,
            )
        else:
            resource._request_uri = '{}/{}/{}/indicators'.format(
                resource._request_uri, custom_type, association_api_branch
            )
        return resource