def process_child_attrib(d, node):
    """
    Processes the attributes dictionary of a 'node' or 'way' tag.

    Will split address items into an 'address' sub-dictionary
    Remaining items will keep their key, value pair

    :param d: Input dictionary of form {'k': key, 'v': value}
    :param node: The output dictionary for the node.
    :return: node dictionary with item added appropriately.
    """
    try:
        k, v = d['k'], d['v']
    except KeyError:
        return node
    if k[:5] == 'addr:':
        ks = k.split(':')
        if len(ks) > 2:
            return node
        if 'address' not in node.keys():
            node['address'] = {}
        node['address'][ks[-1]] = v
    else:
        node[k] = v
    return node