def special_typechecking(value, msg):
    """
    Special Typechecking not available via protocol itself
    :param value: <dict>
    :param msg: <proto object>
    :return: <bool>
    """
    result = True
    if msg.DESCRIPTOR.name == TARGET:
        result &= special_target_typecheck(value)
    elif msg.DESCRIPTOR.name == PLUGIN:
        result &= special_plugin_checking(value)
    return result