saved_model_schema_version: 1
meta_graphs {
  meta_info_def {
    stripped_op_list {
      op {
        name: "Const"
        output_arg {
          name: "output"
          type_attr: "dtype"
        }
        attr {
          name: "value"
          type: "tensor"
        }
        attr {
          name: "dtype"
          type: "type"
        }
      }
      op {
        name: "NoOp"
      }
      op {
        name: "Placeholder"
        output_arg {
          name: "output"
          type_attr: "dtype"
        }
        attr {
          name: "dtype"
          type: "type"
        }
        attr {
          name: "shape"
          type: "shape"
          default_value {
            shape {
              unknown_rank: true
            }
          }
        }
      }
      op {
        name: "ReadVariableOp"
        input_arg {
          name: "resource"
          type: DT_RESOURCE
        }
        output_arg {
          name: "value"
          type_attr: "dtype"
        }
        attr {
          name: "dtype"
          type: "type"
        }
        is_stateful: true
      }
      op {
        name: "StatefulPartitionedCall"
        input_arg {
          name: "args"
          type_list_attr: "Tin"
        }
        output_arg {
          name: "output"
          type_list_attr: "Tout"
        }
        attr {
          name: "Tin"
          type: "list(type)"
          has_minimum: true
        }
        attr {
          name: "Tout"
          type: "list(type)"
          has_minimum: true
        }
        attr {
          name: "f"
          type: "func"
        }
        attr {
          name: "config"
          type: "string"
          default_value {
            s: ""
          }
        }
        attr {
          name: "config_proto"
          type: "string"
          default_value {
            s: ""
          }
        }
        attr {
          name: "executor_type"
          type: "string"
          default_value {
            s: ""
          }
        }
        is_stateful: true
      }
      op {
        name: "VarHandleOp"
        output_arg {
          name: "resource"
          type: DT_RESOURCE
        }
        attr {
          name: "container"
          type: "string"
          default_value {
            s: ""
          }
        }
        attr {
          name: "shared_name"
          type: "string"
          default_value {
            s: ""
          }
        }
        attr {
          name: "dtype"
          type: "type"
        }
        attr {
          name: "shape"
          type: "shape"
        }
        is_stateful: true
      }
    }
    tags: "serve"
    tensorflow_version: "1.15.0"
    tensorflow_git_version: "unknown"
    stripped_default_attrs: true
  }
  graph_def {
    node {
      name: "dense/kernel"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
            dim {
              size: 214
            }
            dim {
              size: 100
            }
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "dense/kernel"
        }
      }
    }
    node {
      name: "dense/kernel/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "dense/kernel"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
              dim {
                size: 214
              }
              dim {
                size: 100
              }
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "dense/bias"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
            dim {
              size: 100
            }
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "dense/bias"
        }
      }
    }
    node {
      name: "dense/bias/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "dense/bias"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
              dim {
                size: 100
              }
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "dense_1/kernel"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
            dim {
              size: 100
            }
            dim {
              size: 1
            }
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "dense_1/kernel"
        }
      }
    }
    node {
      name: "dense_1/kernel/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "dense_1/kernel"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
              dim {
                size: 100
              }
              dim {
                size: 1
              }
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "dense_1/bias"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
            dim {
              size: 1
            }
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "dense_1/bias"
        }
      }
    }
    node {
      name: "dense_1/bias/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "dense_1/bias"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
              dim {
                size: 1
              }
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "total"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "total"
        }
      }
    }
    node {
      name: "total/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "total"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "count"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "count"
        }
      }
    }
    node {
      name: "count/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "count"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "total_1"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "total_1"
        }
      }
    }
    node {
      name: "total_1/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "total_1"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "count_1"
      op: "VarHandleOp"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
      attr {
        key: "shape"
        value {
          shape {
          }
        }
      }
      attr {
        key: "shared_name"
        value {
          s: "count_1"
        }
      }
    }
    node {
      name: "count_1/Read/ReadVariableOp"
      op: "ReadVariableOp"
      input: "count_1"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_FLOAT
        }
      }
    }
    node {
      name: "NoOp"
      op: "NoOp"
    }
    node {
      name: "Const"
      op: "Const"
      device: "/device:CPU:0"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_STRING
        }
      }
      attr {
        key: "value"
        value {
          tensor {
            dtype: DT_STRING
            tensor_shape {
            }
            string_val: "\n\277\001\n\030\010\001\022\024layer_with_weights-0\n\013\010\001\022\007layer-0\n\030\010\002\022\024layer_with_weights-1\n\013\010\002\022\007layer-1\n\r\010\003\022\toptimizer\n\031\010\004\022\025regularization_losses\n\r\010\005\022\tvariables\n\027\010\006\022\023trainable_variables\n\r\010\007\022\tkeras_api\n\016\010\010\022\nsignatures\nh\n\n\010\t\022\006kernel\n\010\010\n\022\004bias\n\031\010\013\022\025regularization_losses\n\r\010\014\022\tvariables\n\027\010\r\022\023trainable_variables\n\r\010\016\022\tkeras_api\nh\n\n\010\017\022\006kernel\n\010\010\020\022\004bias\n\031\010\021\022\025regularization_losses\n\r\010\022\022\tvariables\n\027\010\023\022\023trainable_variables\n\r\010\024\022\tkeras_api\n\000\n\000\n\034\n\005\010\t\022\0010\n\005\010\n\022\0011\n\005\010\017\022\0012\n\005\010\020\022\0013\n\034\n\005\010\t\022\0010\n\005\010\n\022\0011\n\005\010\017\022\0012\n\005\010\020\022\0013\n\255\001\n\n\010\025\022\006layers\n\037\010\026\022\033layer_regularization_losses\n\033\010\027\022\027non_trainable_variables\n\021\010\030\022\rlayer_metrics\n\031\010\004\022\025regularization_losses\n\013\010\031\022\007metrics\n\r\010\005\022\tvariables\n\027\010\006\022\023trainable_variables\n\000\nX\022V\n\016VARIABLE_VALUE\022\014dense/kernel\0326layer_with_weights-0/kernel/.ATTRIBUTES/VARIABLE_VALUE\nT\022R\n\016VARIABLE_VALUE\022\ndense/bias\0324layer_with_weights-0/bias/.ATTRIBUTES/VARIABLE_VALUE\n\000\n\016\n\005\010\t\022\0010\n\005\010\n\022\0011\n\016\n\005\010\t\022\0010\n\005\010\n\022\0011\n\255\001\n\n\010\032\022\006layers\n\037\010\033\022\033layer_regularization_losses\n\033\010\034\022\027non_trainable_variables\n\021\010\035\022\rlayer_metrics\n\031\010\013\022\025regularization_losses\n\013\010\036\022\007metrics\n\r\010\014\022\tvariables\n\027\010\r\022\023trainable_variables\nZ\022X\n\016VARIABLE_VALUE\022\016dense_1/kernel\0326layer_with_weights-1/kernel/.ATTRIBUTES/VARIABLE_VALUE\nV\022T\n\016VARIABLE_VALUE\022\014dense_1/bias\0324layer_with_weights-1/bias/.ATTRIBUTES/VARIABLE_VALUE\n\000\n\016\n\005\010\017\022\0010\n\005\010\020\022\0011\n\016\n\005\010\017\022\0010\n\005\010\020\022\0011\n\255\001\n\n\010\037\022\006layers\n\037\010 \022\033layer_regularization_losses\n\033\010!\022\027non_trainable_variables\n\021\010\"\022\rlayer_metrics\n\031\010\021\022\025regularization_losses\n\013\010#\022\007metrics\n\r\010\022\022\tvariables\n\027\010\023\022\023trainable_variables\n\016\n\005\010\001\022\0010\n\005\010\002\022\0011\n\000\n\000\n\000\n\016\n\005\010$\022\0010\n\005\010%\022\0011\n\000\n\000\n\000\n\000\n\000\n\000\n\000\n\000\n\000\n\000\n4\n\t\010&\022\005total\n\t\010\'\022\005count\n\r\010(\022\tvariables\n\r\010)\022\tkeras_api\nD\n\t\010*\022\005total\n\t\010+\022\005count\n\016\010,\022\n_fn_kwargs\n\r\010-\022\tvariables\n\r\010.\022\tkeras_api\nO\022M\n\016VARIABLE_VALUE\022\005total\0324keras_api/metrics/0/total/.ATTRIBUTES/VARIABLE_VALUE\nO\022M\n\016VARIABLE_VALUE\022\005count\0324keras_api/metrics/0/count/.ATTRIBUTES/VARIABLE_VALUE\n\016\n\005\010&\022\0010\n\005\010\'\022\0011\n\017\n\r\010(\022\tvariables\nQ\022O\n\016VARIABLE_VALUE\022\007total_1\0324keras_api/metrics/1/total/.ATTRIBUTES/VARIABLE_VALUE\nQ\022O\n\016VARIABLE_VALUE\022\007count_1\0324keras_api/metrics/1/count/.ATTRIBUTES/VARIABLE_VALUE\n\000\n\016\n\005\010*\022\0010\n\005\010+\022\0011\n\017\n\r\010-\022\tvariables"
          }
        }
      }
    }
    node {
      name: "serving_default_input_1"
      op: "Placeholder"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 214
              }
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_INT32
        }
      }
      attr {
        key: "shape"
        value {
          shape {
            dim {
              size: -1
            }
            dim {
              size: 214
            }
          }
        }
      }
    }
    node {
      name: "StatefulPartitionedCall"
      op: "StatefulPartitionedCall"
      input: "serving_default_input_1"
      input: "dense/kernel"
      input: "dense/bias"
      input: "dense_1/kernel"
      input: "dense_1/bias"
      attr {
        key: "Tin"
        value {
          list {
            type: DT_INT32
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
          }
        }
      }
      attr {
        key: "Tout"
        value {
          list {
            type: DT_FLOAT
          }
        }
      }
      attr {
        key: "_collective_manager_ids"
        value {
          list {
          }
        }
      }
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 1
              }
            }
          }
        }
      }
      attr {
        key: "_read_only_resource_inputs"
        value {
          list {
            i: 1
            i: 2
            i: 3
            i: 4
          }
        }
      }
      attr {
        key: "config_proto"
        value {
          s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
        }
      }
      attr {
        key: "f"
        value {
          func {
            name: "__inference_signature_wrapper_6671"
          }
        }
      }
    }
    node {
      name: "saver_filename"
      op: "Placeholder"
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "dtype"
        value {
          type: DT_STRING
        }
      }
      attr {
        key: "shape"
        value {
          shape {
          }
        }
      }
    }
    node {
      name: "StatefulPartitionedCall_1"
      op: "StatefulPartitionedCall"
      input: "saver_filename"
      input: "dense/kernel/Read/ReadVariableOp"
      input: "dense/bias/Read/ReadVariableOp"
      input: "dense_1/kernel/Read/ReadVariableOp"
      input: "dense_1/bias/Read/ReadVariableOp"
      input: "total/Read/ReadVariableOp"
      input: "count/Read/ReadVariableOp"
      input: "total_1/Read/ReadVariableOp"
      input: "count_1/Read/ReadVariableOp"
      input: "Const"
      attr {
        key: "Tin"
        value {
          list {
            type: DT_STRING
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_FLOAT
            type: DT_STRING
          }
        }
      }
      attr {
        key: "Tout"
        value {
          list {
            type: DT_STRING
          }
        }
      }
      attr {
        key: "_collective_manager_ids"
        value {
          list {
          }
        }
      }
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "_read_only_resource_inputs"
        value {
          list {
          }
        }
      }
      attr {
        key: "config_proto"
        value {
          s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
        }
      }
      attr {
        key: "f"
        value {
          func {
            name: "__inference__traced_save_6824"
          }
        }
      }
    }
    node {
      name: "StatefulPartitionedCall_2"
      op: "StatefulPartitionedCall"
      input: "saver_filename"
      input: "dense/kernel"
      input: "dense/bias"
      input: "dense_1/kernel"
      input: "dense_1/bias"
      input: "total"
      input: "count"
      input: "total_1"
      input: "count_1"
      attr {
        key: "Tin"
        value {
          list {
            type: DT_STRING
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
            type: DT_RESOURCE
          }
        }
      }
      attr {
        key: "Tout"
        value {
          list {
            type: DT_STRING
          }
        }
      }
      attr {
        key: "_collective_manager_ids"
        value {
          list {
          }
        }
      }
      attr {
        key: "_output_shapes"
        value {
          list {
            shape {
            }
          }
        }
      }
      attr {
        key: "_read_only_resource_inputs"
        value {
          list {
          }
        }
      }
      attr {
        key: "config_proto"
        value {
          s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
        }
      }
      attr {
        key: "f"
        value {
          func {
            name: "__inference__traced_restore_6860"
          }
        }
      }
    }
    library {
      function {
        signature {
          name: "__inference__traced_restore_6860"
          input_arg {
            name: "file_prefix"
            type: DT_STRING
          }
          input_arg {
            name: "assignvariableop_dense_kernel"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_1_dense_bias"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_2_dense_1_kernel"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_3_dense_1_bias"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_4_total"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_5_count"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_6_total_1"
            type: DT_RESOURCE
          }
          input_arg {
            name: "assignvariableop_7_count_1"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity_9"
            type: DT_STRING
          }
          is_stateful: true
          control_output: "AssignVariableOp"
          control_output: "AssignVariableOp_1"
          control_output: "AssignVariableOp_2"
          control_output: "AssignVariableOp_3"
          control_output: "AssignVariableOp_4"
          control_output: "AssignVariableOp_5"
          control_output: "AssignVariableOp_6"
          control_output: "AssignVariableOp_7"
          control_output: "RestoreV2"
          control_output: "RestoreV2_1"
        }
        node_def {
          name: "RestoreV2/tensor_names"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 8
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 8
                  }
                }
                string_val: "layer_with_weights-0/kernel/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "layer_with_weights-0/bias/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "layer_with_weights-1/kernel/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "layer_with_weights-1/bias/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/0/total/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/0/count/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/1/total/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/1/count/.ATTRIBUTES/VARIABLE_VALUE"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "RestoreV2/tensor_names"
          }
        }
        node_def {
          name: "RestoreV2/shape_and_slices"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 8
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 8
                  }
                }
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
              }
            }
          }
          experimental_debug_info {
            original_node_names: "RestoreV2/shape_and_slices"
          }
        }
        node_def {
          name: "RestoreV2"
          op: "RestoreV2"
          input: "file_prefix"
          input: "RestoreV2/tensor_names:output:0"
          input: "RestoreV2/shape_and_slices:output:0"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          attr {
            key: "dtypes"
            value {
              list {
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
              }
            }
          }
          experimental_debug_info {
            original_node_names: "RestoreV2"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "RestoreV2:tensors:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        node_def {
          name: "AssignVariableOp"
          op: "AssignVariableOp"
          input: "assignvariableop_dense_kernel"
          input: "Identity:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp"
          }
        }
        node_def {
          name: "Identity_1"
          op: "Identity"
          input: "RestoreV2:tensors:1"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_1"
          }
        }
        node_def {
          name: "AssignVariableOp_1"
          op: "AssignVariableOp"
          input: "assignvariableop_1_dense_bias"
          input: "Identity_1:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_1"
          }
        }
        node_def {
          name: "Identity_2"
          op: "Identity"
          input: "RestoreV2:tensors:2"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_2"
          }
        }
        node_def {
          name: "AssignVariableOp_2"
          op: "AssignVariableOp"
          input: "assignvariableop_2_dense_1_kernel"
          input: "Identity_2:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_2"
          }
        }
        node_def {
          name: "Identity_3"
          op: "Identity"
          input: "RestoreV2:tensors:3"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_3"
          }
        }
        node_def {
          name: "AssignVariableOp_3"
          op: "AssignVariableOp"
          input: "assignvariableop_3_dense_1_bias"
          input: "Identity_3:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_3"
          }
        }
        node_def {
          name: "Identity_4"
          op: "Identity"
          input: "RestoreV2:tensors:4"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_4"
          }
        }
        node_def {
          name: "AssignVariableOp_4"
          op: "AssignVariableOp"
          input: "assignvariableop_4_total"
          input: "Identity_4:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_4"
          }
        }
        node_def {
          name: "Identity_5"
          op: "Identity"
          input: "RestoreV2:tensors:5"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_5"
          }
        }
        node_def {
          name: "AssignVariableOp_5"
          op: "AssignVariableOp"
          input: "assignvariableop_5_count"
          input: "Identity_5:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_5"
          }
        }
        node_def {
          name: "Identity_6"
          op: "Identity"
          input: "RestoreV2:tensors:6"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_6"
          }
        }
        node_def {
          name: "AssignVariableOp_6"
          op: "AssignVariableOp"
          input: "assignvariableop_6_total_1"
          input: "Identity_6:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_6"
          }
        }
        node_def {
          name: "Identity_7"
          op: "Identity"
          input: "RestoreV2:tensors:7"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_7"
          }
        }
        node_def {
          name: "AssignVariableOp_7"
          op: "AssignVariableOp"
          input: "assignvariableop_7_count_1"
          input: "Identity_7:output:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "AssignVariableOp_7"
          }
        }
        node_def {
          name: "RestoreV2_1/tensor_names"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 1
                  }
                }
                string_val: "_CHECKPOINTABLE_OBJECT_GRAPH"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "RestoreV2_1/tensor_names"
          }
        }
        node_def {
          name: "RestoreV2_1/shape_and_slices"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 1
                  }
                }
                string_val: ""
              }
            }
          }
          experimental_debug_info {
            original_node_names: "RestoreV2_1/shape_and_slices"
          }
        }
        node_def {
          name: "RestoreV2_1"
          op: "RestoreV2"
          input: "file_prefix"
          input: "RestoreV2_1/tensor_names:output:0"
          input: "RestoreV2_1/shape_and_slices:output:0"
          input: "^RestoreV2"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  unknown_rank: true
                }
              }
            }
          }
          attr {
            key: "dtypes"
            value {
              list {
                type: DT_STRING
              }
            }
          }
          experimental_debug_info {
            original_node_names: "RestoreV2_1"
          }
        }
        node_def {
          name: "NoOp"
          op: "NoOp"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          experimental_debug_info {
            original_node_names: "NoOp"
          }
        }
        node_def {
          name: "Identity_8"
          op: "Identity"
          input: "file_prefix"
          input: "^AssignVariableOp"
          input: "^AssignVariableOp_1"
          input: "^AssignVariableOp_2"
          input: "^AssignVariableOp_3"
          input: "^AssignVariableOp_4"
          input: "^AssignVariableOp_5"
          input: "^AssignVariableOp_6"
          input: "^AssignVariableOp_7"
          input: "^NoOp"
          device: "/device:CPU:0"
          attr {
            key: "T"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_8"
          }
        }
        node_def {
          name: "Identity_9"
          op: "Identity"
          input: "Identity_8:output:0"
          input: "^AssignVariableOp"
          input: "^AssignVariableOp_1"
          input: "^AssignVariableOp_2"
          input: "^AssignVariableOp_3"
          input: "^AssignVariableOp_4"
          input: "^AssignVariableOp_5"
          input: "^AssignVariableOp_6"
          input: "^AssignVariableOp_7"
          input: "^RestoreV2"
          input: "^RestoreV2_1"
          attr {
            key: "T"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_9"
          }
        }
        ret {
          key: "identity_9"
          value: "Identity_9:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "AssignVariableOp"
          value: "AssignVariableOp"
        }
        control_ret {
          key: "AssignVariableOp_1"
          value: "AssignVariableOp_1"
        }
        control_ret {
          key: "AssignVariableOp_2"
          value: "AssignVariableOp_2"
        }
        control_ret {
          key: "AssignVariableOp_3"
          value: "AssignVariableOp_3"
        }
        control_ret {
          key: "AssignVariableOp_4"
          value: "AssignVariableOp_4"
        }
        control_ret {
          key: "AssignVariableOp_5"
          value: "AssignVariableOp_5"
        }
        control_ret {
          key: "AssignVariableOp_6"
          value: "AssignVariableOp_6"
        }
        control_ret {
          key: "AssignVariableOp_7"
          value: "AssignVariableOp_7"
        }
        control_ret {
          key: "RestoreV2"
          value: "RestoreV2"
        }
        control_ret {
          key: "RestoreV2_1"
          value: "RestoreV2_1"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "file_prefix"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 5
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 6
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 7
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 8
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_fn_6629"
          input_arg {
            name: "input_1"
            type: DT_INT32
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_1"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_2"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "input_1"
          input: "unknown"
          input: "unknown_0"
          input: "unknown_1"
          input: "unknown_2"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
                i: 3
                i: 4
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_sequential_layer_call_and_return_conditional_losses_6618"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "input_1"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_and_return_conditional_losses_6587"
          input_arg {
            name: "input_1"
            type: DT_INT32
          }
          input_arg {
            name: "dense_6555"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_6557"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6581"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6583"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "dense/StatefulPartitionedCall"
          control_output: "dense_1/StatefulPartitionedCall"
        }
        node_def {
          name: "dense/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "input_1"
          input: "dense_6555"
          input: "dense_6557"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_layer_call_and_return_conditional_losses_6544"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "dense_1/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "dense/StatefulPartitionedCall:output:0"
          input: "dense_1_6581"
          input: "dense_1_6583"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_FLOAT
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_1_layer_call_and_return_conditional_losses_6570"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "dense_1/StatefulPartitionedCall:output:0"
          input: "^dense/StatefulPartitionedCall"
          input: "^dense_1/StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "dense/StatefulPartitionedCall"
          value: "dense/StatefulPartitionedCall"
        }
        control_ret {
          key: "dense_1/StatefulPartitionedCall"
          value: "dense_1/StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "input_1"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_and_return_conditional_losses_6618"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "dense_6607"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_6609"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6612"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6614"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "dense/StatefulPartitionedCall"
          control_output: "dense_1/StatefulPartitionedCall"
        }
        node_def {
          name: "dense/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "inputs"
          input: "dense_6607"
          input: "dense_6609"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_layer_call_and_return_conditional_losses_6544"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "dense_1/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "dense/StatefulPartitionedCall:output:0"
          input: "dense_1_6612"
          input: "dense_1_6614"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_FLOAT
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_1_layer_call_and_return_conditional_losses_6570"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "dense_1/StatefulPartitionedCall:output:0"
          input: "^dense/StatefulPartitionedCall"
          input: "^dense_1/StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "dense/StatefulPartitionedCall"
          value: "dense/StatefulPartitionedCall"
        }
        control_ret {
          key: "dense_1/StatefulPartitionedCall"
          value: "dense_1/StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_fn_6656"
          input_arg {
            name: "input_1"
            type: DT_INT32
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_1"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_2"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "input_1"
          input: "unknown"
          input: "unknown_0"
          input: "unknown_1"
          input: "unknown_2"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
                i: 3
                i: 4
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_sequential_layer_call_and_return_conditional_losses_6645"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "input_1"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_dense_1_layer_call_and_return_conditional_losses_6764"
          input_arg {
            name: "inputs"
            type: DT_FLOAT
          }
          input_arg {
            name: "matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "MatMul"
          op: "MatMul"
          input: "inputs"
          input: "MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul"
          }
        }
        node_def {
          name: "BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "BiasAdd"
          op: "BiasAdd"
          input: "MatMul:product:0"
          input: "BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 100
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 100
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_dense_layer_call_fn_6754"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "inputs"
          input: "unknown"
          input: "unknown_0"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_layer_call_and_return_conditional_losses_6544"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference__traced_save_6824"
          input_arg {
            name: "file_prefix"
            type: DT_STRING
          }
          input_arg {
            name: "savev2_dense_kernel_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_dense_bias_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_dense_1_kernel_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_dense_1_bias_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_total_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_count_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_total_1_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_count_1_read_readvariableop"
            type: DT_FLOAT
          }
          input_arg {
            name: "savev2_1_const"
            type: DT_STRING
          }
          output_arg {
            name: "identity_1"
            type: DT_STRING
          }
          is_stateful: true
          control_output: "MergeV2Checkpoints"
          control_output: "SaveV2"
          control_output: "SaveV2_1"
        }
        node_def {
          name: "StaticRegexFullMatch"
          op: "StaticRegexFullMatch"
          input: "file_prefix"
          device: "/device:CPU:*"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          attr {
            key: "pattern"
            value {
              s: "^s3://.*"
            }
          }
          experimental_debug_info {
            original_node_names: "StaticRegexFullMatch"
          }
        }
        node_def {
          name: "Const"
          op: "Const"
          device: "/device:CPU:*"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                }
                string_val: ".part"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Const"
          }
        }
        node_def {
          name: "Const_1"
          op: "Const"
          device: "/device:CPU:*"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                }
                string_val: "_temp_6f1e5fef49bb4c06ace07a8a95dfbb1b/part"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Const_1"
          }
        }
        node_def {
          name: "Select"
          op: "Select"
          input: "StaticRegexFullMatch:output:0"
          input: "Const:output:0"
          input: "Const_1:output:0"
          device: "/device:CPU:*"
          attr {
            key: "T"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Select"
          }
        }
        node_def {
          name: "StringJoin"
          op: "StringJoin"
          input: "file_prefix"
          input: "Select:output:0"
          device: "/device:CPU:*"
          attr {
            key: "N"
            value {
              i: 2
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StringJoin"
          }
        }
        node_def {
          name: "num_shards"
          op: "Const"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_INT32
                tensor_shape {
                }
                int_val: 2
              }
            }
          }
          experimental_debug_info {
            original_node_names: "num_shards"
          }
        }
        node_def {
          name: "ShardedFilename/shard"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_INT32
                tensor_shape {
                }
                int_val: 0
              }
            }
          }
          experimental_debug_info {
            original_node_names: "ShardedFilename/shard"
          }
        }
        node_def {
          name: "ShardedFilename"
          op: "ShardedFilename"
          input: "StringJoin:output:0"
          input: "ShardedFilename/shard:output:0"
          input: "num_shards:output:0"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "ShardedFilename"
          }
        }
        node_def {
          name: "SaveV2/tensor_names"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 8
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 8
                  }
                }
                string_val: "layer_with_weights-0/kernel/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "layer_with_weights-0/bias/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "layer_with_weights-1/kernel/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "layer_with_weights-1/bias/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/0/total/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/0/count/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/1/total/.ATTRIBUTES/VARIABLE_VALUE"
                string_val: "keras_api/metrics/1/count/.ATTRIBUTES/VARIABLE_VALUE"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "SaveV2/tensor_names"
          }
        }
        node_def {
          name: "SaveV2/shape_and_slices"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 8
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 8
                  }
                }
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
                string_val: ""
              }
            }
          }
          experimental_debug_info {
            original_node_names: "SaveV2/shape_and_slices"
          }
        }
        node_def {
          name: "SaveV2"
          op: "SaveV2"
          input: "ShardedFilename:filename:0"
          input: "SaveV2/tensor_names:output:0"
          input: "SaveV2/shape_and_slices:output:0"
          input: "savev2_dense_kernel_read_readvariableop"
          input: "savev2_dense_bias_read_readvariableop"
          input: "savev2_dense_1_kernel_read_readvariableop"
          input: "savev2_dense_1_bias_read_readvariableop"
          input: "savev2_total_read_readvariableop"
          input: "savev2_count_read_readvariableop"
          input: "savev2_total_1_read_readvariableop"
          input: "savev2_count_1_read_readvariableop"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtypes"
            value {
              list {
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
                type: DT_FLOAT
              }
            }
          }
          experimental_debug_info {
            original_node_names: "SaveV2"
          }
        }
        node_def {
          name: "ShardedFilename_1/shard"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_INT32
                tensor_shape {
                }
                int_val: 1
              }
            }
          }
          experimental_debug_info {
            original_node_names: "ShardedFilename_1/shard"
          }
        }
        node_def {
          name: "ShardedFilename_1"
          op: "ShardedFilename"
          input: "StringJoin:output:0"
          input: "ShardedFilename_1/shard:output:0"
          input: "num_shards:output:0"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "ShardedFilename_1"
          }
        }
        node_def {
          name: "SaveV2_1/tensor_names"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 1
                  }
                }
                string_val: "_CHECKPOINTABLE_OBJECT_GRAPH"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "SaveV2_1/tensor_names"
          }
        }
        node_def {
          name: "SaveV2_1/shape_and_slices"
          op: "Const"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "value"
            value {
              tensor {
                dtype: DT_STRING
                tensor_shape {
                  dim {
                    size: 1
                  }
                }
                string_val: ""
              }
            }
          }
          experimental_debug_info {
            original_node_names: "SaveV2_1/shape_and_slices"
          }
        }
        node_def {
          name: "SaveV2_1"
          op: "SaveV2"
          input: "ShardedFilename_1:filename:0"
          input: "SaveV2_1/tensor_names:output:0"
          input: "SaveV2_1/shape_and_slices:output:0"
          input: "savev2_1_const"
          input: "^SaveV2"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          attr {
            key: "dtypes"
            value {
              list {
                type: DT_STRING
              }
            }
          }
          experimental_debug_info {
            original_node_names: "SaveV2_1"
          }
        }
        node_def {
          name: "MergeV2Checkpoints/checkpoint_prefixes"
          op: "Pack"
          input: "ShardedFilename:filename:0"
          input: "ShardedFilename_1:filename:0"
          input: "^SaveV2"
          input: "^SaveV2_1"
          device: "/device:CPU:0"
          attr {
            key: "N"
            value {
              i: 2
            }
          }
          attr {
            key: "T"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 2
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "MergeV2Checkpoints/checkpoint_prefixes"
          }
        }
        node_def {
          name: "MergeV2Checkpoints"
          op: "MergeV2Checkpoints"
          input: "MergeV2Checkpoints/checkpoint_prefixes:output:0"
          input: "file_prefix"
          input: "^SaveV2_1"
          device: "/device:CPU:0"
          attr {
            key: "_output_shapes"
            value {
              list {
              }
            }
          }
          experimental_debug_info {
            original_node_names: "MergeV2Checkpoints"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "file_prefix"
          input: "^MergeV2Checkpoints"
          device: "/device:CPU:0"
          attr {
            key: "T"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        node_def {
          name: "Identity_1"
          op: "Identity"
          input: "Identity:output:0"
          input: "^MergeV2Checkpoints"
          input: "^SaveV2"
          input: "^SaveV2_1"
          attr {
            key: "T"
            value {
              type: DT_STRING
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity_1"
          }
        }
        ret {
          key: "identity_1"
          value: "Identity_1:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
              }
              shape {
                dim {
                  size: 214
                }
                dim {
                  size: 100
                }
              }
              shape {
                dim {
                  size: 100
                }
              }
              shape {
                dim {
                  size: 100
                }
                dim {
                  size: 1
                }
              }
              shape {
                dim {
                  size: 1
                }
              }
              shape {
              }
              shape {
              }
              shape {
              }
              shape {
              }
              shape {
              }
            }
          }
        }
        control_ret {
          key: "MergeV2Checkpoints"
          value: "MergeV2Checkpoints"
        }
        control_ret {
          key: "SaveV2"
          value: "SaveV2"
        }
        control_ret {
          key: "SaveV2_1"
          value: "SaveV2_1"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "file_prefix"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: 214
                    }
                    dim {
                      size: 100
                    }
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: 100
                    }
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: 100
                    }
                    dim {
                      size: 1
                    }
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: 1
                    }
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 5
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 6
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 7
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 8
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 9
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_and_return_conditional_losses_6689"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "dense_matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "dense/Cast"
          op: "Cast"
          input: "inputs"
          attr {
            key: "DstT"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "SrcT"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 214
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/Cast"
          }
        }
        node_def {
          name: "dense/MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 214
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense/MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "dense/MatMul"
          op: "MatMul"
          input: "dense/Cast:y:0"
          input: "dense/MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/MatMul"
          }
        }
        node_def {
          name: "dense/BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense/BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "dense/BiasAdd"
          op: "BiasAdd"
          input: "dense/MatMul:product:0"
          input: "dense/BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/BiasAdd"
          }
        }
        node_def {
          name: "dense/Relu"
          op: "Relu"
          input: "dense/BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/Relu"
          }
        }
        node_def {
          name: "dense_1/MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_1_matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "dense_1/MatMul"
          op: "MatMul"
          input: "dense/Relu:activations:0"
          input: "dense_1/MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/MatMul"
          }
        }
        node_def {
          name: "dense_1/BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_1_biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "dense_1/BiasAdd"
          op: "BiasAdd"
          input: "dense_1/MatMul:product:0"
          input: "dense_1/BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/BiasAdd"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "dense_1/BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_dense_layer_call_and_return_conditional_losses_6745"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "Cast"
          op: "Cast"
          input: "inputs"
          attr {
            key: "DstT"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "SrcT"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 214
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Cast"
          }
        }
        node_def {
          name: "MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 214
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "MatMul"
          op: "MatMul"
          input: "Cast:y:0"
          input: "MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul"
          }
        }
        node_def {
          name: "BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "BiasAdd"
          op: "BiasAdd"
          input: "MatMul:product:0"
          input: "BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd"
          }
        }
        node_def {
          name: "Relu"
          op: "Relu"
          input: "BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Relu"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "Relu:activations:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_dense_1_layer_call_fn_6773"
          input_arg {
            name: "inputs"
            type: DT_FLOAT
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "inputs"
          input: "unknown"
          input: "unknown_0"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_FLOAT
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_1_layer_call_and_return_conditional_losses_6570"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 100
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 100
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference__wrapped_model_6528"
          input_arg {
            name: "input_1"
            type: DT_INT32
          }
          input_arg {
            name: "sequential_dense_matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "sequential_dense_biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "sequential_dense_1_matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "sequential_dense_1_biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "sequential/dense/Cast"
          op: "Cast"
          input: "input_1"
          attr {
            key: "DstT"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "SrcT"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 214
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense/Cast"
          }
        }
        node_def {
          name: "sequential/dense/MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "sequential_dense_matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 214
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense/MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "sequential/dense/MatMul"
          op: "MatMul"
          input: "sequential/dense/Cast:y:0"
          input: "sequential/dense/MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense/MatMul"
          }
        }
        node_def {
          name: "sequential/dense/BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "sequential_dense_biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense/BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "sequential/dense/BiasAdd"
          op: "BiasAdd"
          input: "sequential/dense/MatMul:product:0"
          input: "sequential/dense/BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense/BiasAdd"
          }
        }
        node_def {
          name: "sequential/dense/Relu"
          op: "Relu"
          input: "sequential/dense/BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense/Relu"
          }
        }
        node_def {
          name: "sequential/dense_1/MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "sequential_dense_1_matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense_1/MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "sequential/dense_1/MatMul"
          op: "MatMul"
          input: "sequential/dense/Relu:activations:0"
          input: "sequential/dense_1/MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense_1/MatMul"
          }
        }
        node_def {
          name: "sequential/dense_1/BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "sequential_dense_1_biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense_1/BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "sequential/dense_1/BiasAdd"
          op: "BiasAdd"
          input: "sequential/dense_1/MatMul:product:0"
          input: "sequential/dense_1/BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "sequential/dense_1/BiasAdd"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "sequential/dense_1/BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "input_1"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_dense_layer_call_and_return_conditional_losses_6544"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "Cast"
          op: "Cast"
          input: "inputs"
          attr {
            key: "DstT"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "SrcT"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 214
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Cast"
          }
        }
        node_def {
          name: "MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 214
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "MatMul"
          op: "MatMul"
          input: "Cast:y:0"
          input: "MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul"
          }
        }
        node_def {
          name: "BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "BiasAdd"
          op: "BiasAdd"
          input: "MatMul:product:0"
          input: "BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd"
          }
        }
        node_def {
          name: "Relu"
          op: "Relu"
          input: "BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Relu"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "Relu:activations:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_and_return_conditional_losses_6601"
          input_arg {
            name: "input_1"
            type: DT_INT32
          }
          input_arg {
            name: "dense_6590"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_6592"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6595"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6597"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "dense/StatefulPartitionedCall"
          control_output: "dense_1/StatefulPartitionedCall"
        }
        node_def {
          name: "dense/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "input_1"
          input: "dense_6590"
          input: "dense_6592"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_layer_call_and_return_conditional_losses_6544"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "dense_1/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "dense/StatefulPartitionedCall:output:0"
          input: "dense_1_6595"
          input: "dense_1_6597"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_FLOAT
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_1_layer_call_and_return_conditional_losses_6570"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "dense_1/StatefulPartitionedCall:output:0"
          input: "^dense/StatefulPartitionedCall"
          input: "^dense_1/StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "dense/StatefulPartitionedCall"
          value: "dense/StatefulPartitionedCall"
        }
        control_ret {
          key: "dense_1/StatefulPartitionedCall"
          value: "dense_1/StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "input_1"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_fn_6733"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_1"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_2"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "inputs"
          input: "unknown"
          input: "unknown_0"
          input: "unknown_1"
          input: "unknown_2"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
                i: 3
                i: 4
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_sequential_layer_call_and_return_conditional_losses_6645"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_and_return_conditional_losses_6645"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "dense_6634"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_6636"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6639"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_6641"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "dense/StatefulPartitionedCall"
          control_output: "dense_1/StatefulPartitionedCall"
        }
        node_def {
          name: "dense/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "inputs"
          input: "dense_6634"
          input: "dense_6636"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_layer_call_and_return_conditional_losses_6544"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "dense_1/StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "dense/StatefulPartitionedCall:output:0"
          input: "dense_1_6639"
          input: "dense_1_6641"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_FLOAT
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_dense_1_layer_call_and_return_conditional_losses_6570"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "dense_1/StatefulPartitionedCall:output:0"
          input: "^dense/StatefulPartitionedCall"
          input: "^dense_1/StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "dense/StatefulPartitionedCall"
          value: "dense/StatefulPartitionedCall"
        }
        control_ret {
          key: "dense_1/StatefulPartitionedCall"
          value: "dense_1/StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_dense_1_layer_call_and_return_conditional_losses_6570"
          input_arg {
            name: "inputs"
            type: DT_FLOAT
          }
          input_arg {
            name: "matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "MatMul"
          op: "MatMul"
          input: "inputs"
          input: "MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "MatMul"
          }
        }
        node_def {
          name: "BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "BiasAdd"
          op: "BiasAdd"
          input: "MatMul:product:0"
          input: "BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "BiasAdd"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 100
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 100
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_signature_wrapper_6671"
          input_arg {
            name: "input_1"
            type: DT_INT32
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_1"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_2"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "input_1"
          input: "unknown"
          input: "unknown_0"
          input: "unknown_1"
          input: "unknown_2"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
                i: 3
                i: 4
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference__wrapped_model_6528"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "input_1"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_fn_6720"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "unknown"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_0"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_1"
            type: DT_RESOURCE
          }
          input_arg {
            name: "unknown_2"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
          control_output: "StatefulPartitionedCall"
        }
        node_def {
          name: "StatefulPartitionedCall"
          op: "StatefulPartitionedCall"
          input: "inputs"
          input: "unknown"
          input: "unknown_0"
          input: "unknown_1"
          input: "unknown_2"
          attr {
            key: "Tin"
            value {
              list {
                type: DT_INT32
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
                type: DT_RESOURCE
              }
            }
          }
          attr {
            key: "Tout"
            value {
              list {
                type: DT_FLOAT
              }
            }
          }
          attr {
            key: "_collective_manager_ids"
            value {
              list {
              }
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "_read_only_resource_inputs"
            value {
              list {
                i: 1
                i: 2
                i: 3
                i: 4
              }
            }
          }
          attr {
            key: "config_proto"
            value {
              s: "\n\007\n\003CPU\020\001\n\007\n\003GPU\020\0002\002J\0008\001"
            }
          }
          attr {
            key: "f"
            value {
              func {
                name: "__inference_sequential_layer_call_and_return_conditional_losses_6618"
              }
            }
          }
          experimental_debug_info {
            original_node_names: "StatefulPartitionedCall"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "StatefulPartitionedCall:output:0"
          input: "^StatefulPartitionedCall"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        control_ret {
          key: "StatefulPartitionedCall"
          value: "StatefulPartitionedCall"
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
      function {
        signature {
          name: "__inference_sequential_layer_call_and_return_conditional_losses_6707"
          input_arg {
            name: "inputs"
            type: DT_INT32
          }
          input_arg {
            name: "dense_matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_matmul_readvariableop_resource"
            type: DT_RESOURCE
          }
          input_arg {
            name: "dense_1_biasadd_readvariableop_resource"
            type: DT_RESOURCE
          }
          output_arg {
            name: "identity"
            type: DT_FLOAT
          }
          is_stateful: true
        }
        node_def {
          name: "dense/Cast"
          op: "Cast"
          input: "inputs"
          attr {
            key: "DstT"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "SrcT"
            value {
              type: DT_INT32
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 214
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/Cast"
          }
        }
        node_def {
          name: "dense/MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 214
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense/MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "dense/MatMul"
          op: "MatMul"
          input: "dense/Cast:y:0"
          input: "dense/MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/MatMul"
          }
        }
        node_def {
          name: "dense/BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense/BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "dense/BiasAdd"
          op: "BiasAdd"
          input: "dense/MatMul:product:0"
          input: "dense/BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/BiasAdd"
          }
        }
        node_def {
          name: "dense/Relu"
          op: "Relu"
          input: "dense/BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense/Relu"
          }
        }
        node_def {
          name: "dense_1/MatMul/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_1_matmul_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 100
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/MatMul/ReadVariableOp"
          }
        }
        node_def {
          name: "dense_1/MatMul"
          op: "MatMul"
          input: "dense/Relu:activations:0"
          input: "dense_1/MatMul/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/MatMul"
          }
        }
        node_def {
          name: "dense_1/BiasAdd/ReadVariableOp"
          op: "ReadVariableOp"
          input: "dense_1_biasadd_readvariableop_resource"
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          attr {
            key: "dtype"
            value {
              type: DT_FLOAT
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/BiasAdd/ReadVariableOp"
          }
        }
        node_def {
          name: "dense_1/BiasAdd"
          op: "BiasAdd"
          input: "dense_1/MatMul:product:0"
          input: "dense_1/BiasAdd/ReadVariableOp:value:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "dense_1/BiasAdd"
          }
        }
        node_def {
          name: "Identity"
          op: "Identity"
          input: "dense_1/BiasAdd:output:0"
          attr {
            key: "T"
            value {
              type: DT_FLOAT
            }
          }
          attr {
            key: "_output_shapes"
            value {
              list {
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
              }
            }
          }
          experimental_debug_info {
            original_node_names: "Identity"
          }
        }
        ret {
          key: "identity"
          value: "Identity:output:0"
        }
        attr {
          key: "_input_shapes"
          value {
            list {
              shape {
                dim {
                  size: -1
                }
                dim {
                  size: 214
                }
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
              shape {
                unknown_rank: true
              }
            }
          }
        }
        arg_attr {
          key: 0
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                }
              }
            }
            attr {
              key: "_user_specified_name"
              value {
                s: "inputs"
              }
            }
          }
        }
        arg_attr {
          key: 1
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 2
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 3
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
        arg_attr {
          key: 4
          value {
            attr {
              key: "_output_shapes"
              value {
                list {
                  shape {
                  }
                }
              }
            }
          }
        }
      }
    }
    versions {
      producer: 331
      min_consumer: 12
    }
  }
  saver_def {
    filename_tensor_name: "saver_filename:0"
    save_tensor_name: "StatefulPartitionedCall_1:0"
    restore_op_name: "StatefulPartitionedCall_2"
    version: V2
  }
  collection_def {
    key: "saved_model_main_op"
    value {
      node_list {
        value: "NoOp"
      }
    }
  }
  signature_def {
    key: "__saved_model_init_op"
    value {
      outputs {
        key: "__saved_model_init_op"
        value {
          name: "NoOp"
          tensor_shape {
            unknown_rank: true
          }
        }
      }
    }
  }
  signature_def {
    key: "serving_default"
    value {
      inputs {
        key: "input_1"
        value {
          name: "serving_default_input_1:0"
          dtype: DT_INT32
          tensor_shape {
            dim {
              size: -1
            }
            dim {
              size: 214
            }
          }
        }
      }
      outputs {
        key: "output_1"
        value {
          name: "StatefulPartitionedCall:0"
          dtype: DT_FLOAT
          tensor_shape {
            dim {
              size: -1
            }
            dim {
              size: 1
            }
          }
        }
      }
      method_name: "tensorflow/serving/predict"
    }
  }
  object_graph_def {
    nodes {
      children {
        node_id: 1
        local_name: "layer_with_weights-0"
      }
      children {
        node_id: 1
        local_name: "layer-0"
      }
      children {
        node_id: 2
        local_name: "layer_with_weights-1"
      }
      children {
        node_id: 2
        local_name: "layer-1"
      }
      children {
        node_id: 3
        local_name: "optimizer"
      }
      children {
        node_id: 4
        local_name: "regularization_losses"
      }
      children {
        node_id: 5
        local_name: "variables"
      }
      children {
        node_id: 6
        local_name: "trainable_variables"
      }
      children {
        node_id: 7
        local_name: "keras_api"
      }
      children {
        node_id: 8
        local_name: "signatures"
      }
      children {
        node_id: 47
        local_name: "__call__"
      }
      children {
        node_id: 48
        local_name: "_default_save_signature"
      }
      children {
        node_id: 49
        local_name: "call_and_return_all_conditional_losses"
      }
      user_object {
        identifier: "_tf_keras_sequential"
        version {
          producer: 1
          min_consumer: 1
        }
        metadata: "{\"class_name\": \"Sequential\", \"name\": \"sequential\", \"trainable\": true, \"expects_training_arg\": true, \"dtype\": \"float32\", \"batch_input_shape\": null, \"config\": {\"name\": \"sequential\", \"layers\": [{\"class_name\": \"Dense\", \"config\": {\"name\": \"dense\", \"trainable\": true, \"dtype\": \"float32\", \"units\": 100, \"activation\": \"relu\", \"use_bias\": true, \"kernel_initializer\": {\"class_name\": \"GlorotUniform\", \"config\": {\"seed\": null}}, \"bias_initializer\": {\"class_name\": \"Zeros\", \"config\": {}}, \"kernel_regularizer\": null, \"bias_regularizer\": null, \"activity_regularizer\": null, \"kernel_constraint\": null, \"bias_constraint\": null}}, {\"class_name\": \"Dense\", \"config\": {\"name\": \"dense_1\", \"trainable\": true, \"dtype\": \"float32\", \"units\": 1, \"activation\": \"linear\", \"use_bias\": true, \"kernel_initializer\": {\"class_name\": \"GlorotUniform\", \"config\": {\"seed\": null}}, \"bias_initializer\": {\"class_name\": \"Zeros\", \"config\": {}}, \"kernel_regularizer\": null, \"bias_regularizer\": null, \"activity_regularizer\": null, \"kernel_constraint\": null, \"bias_constraint\": null}}], \"build_input_shape\": {\"class_name\": \"__tuple__\", \"items\": [null, 214]}}, \"input_spec\": {\"class_name\": \"InputSpec\", \"config\": {\"dtype\": null, \"shape\": null, \"ndim\": null, \"max_ndim\": null, \"min_ndim\": 2, \"axes\": {\"-1\": 214}}}, \"build_input_shape\": {\"class_name\": \"__tuple__\", \"items\": [null, 214]}, \"is_graph_network\": false, \"keras_version\": \"2.2.4-tf\", \"backend\": \"tensorflow\", \"model_config\": {\"class_name\": \"Sequential\", \"config\": {\"name\": \"sequential\", \"layers\": [{\"class_name\": \"Dense\", \"config\": {\"name\": \"dense\", \"trainable\": true, \"dtype\": \"float32\", \"units\": 100, \"activation\": \"relu\", \"use_bias\": true, \"kernel_initializer\": {\"class_name\": \"GlorotUniform\", \"config\": {\"seed\": null}}, \"bias_initializer\": {\"class_name\": \"Zeros\", \"config\": {}}, \"kernel_regularizer\": null, \"bias_regularizer\": null, \"activity_regularizer\": null, \"kernel_constraint\": null, \"bias_constraint\": null}}, {\"class_name\": \"Dense\", \"config\": {\"name\": \"dense_1\", \"trainable\": true, \"dtype\": \"float32\", \"units\": 1, \"activation\": \"linear\", \"use_bias\": true, \"kernel_initializer\": {\"class_name\": \"GlorotUniform\", \"config\": {\"seed\": null}}, \"bias_initializer\": {\"class_name\": \"Zeros\", \"config\": {}}, \"kernel_regularizer\": null, \"bias_regularizer\": null, \"activity_regularizer\": null, \"kernel_constraint\": null, \"bias_constraint\": null}}], \"build_input_shape\": {\"class_name\": \"__tuple__\", \"items\": [null, 214]}}}, \"training_config\": {\"loss\": \"mean_absolute_error\", \"metrics\": [\"mean_squared_error\"], \"weighted_metrics\": null, \"loss_weights\": null, \"sample_weight_mode\": null, \"optimizer_config\": {\"class_name\": \"Adam\", \"config\": {\"name\": \"Adam\", \"learning_rate\": 0.0003000000142492354, \"decay\": 0.0, \"beta_1\": 0.8999999761581421, \"beta_2\": 0.9990000128746033, \"epsilon\": 1e-07, \"amsgrad\": false}}}}"
      }
    }
    nodes {
      children {
        node_id: 9
        local_name: "kernel"
      }
      children {
        node_id: 10
        local_name: "bias"
      }
      children {
        node_id: 11
        local_name: "regularization_losses"
      }
      children {
        node_id: 12
        local_name: "variables"
      }
      children {
        node_id: 13
        local_name: "trainable_variables"
      }
      children {
        node_id: 14
        local_name: "keras_api"
      }
      children {
        node_id: 50
        local_name: "__call__"
      }
      children {
        node_id: 51
        local_name: "call_and_return_all_conditional_losses"
      }
      user_object {
        identifier: "_tf_keras_layer"
        version {
          producer: 1
          min_consumer: 1
        }
        metadata: "{\"class_name\": \"Dense\", \"name\": \"dense\", \"trainable\": true, \"expects_training_arg\": false, \"dtype\": \"float32\", \"batch_input_shape\": null, \"stateful\": false, \"config\": {\"name\": \"dense\", \"trainable\": true, \"dtype\": \"float32\", \"units\": 100, \"activation\": \"relu\", \"use_bias\": true, \"kernel_initializer\": {\"class_name\": \"GlorotUniform\", \"config\": {\"seed\": null}}, \"bias_initializer\": {\"class_name\": \"Zeros\", \"config\": {}}, \"kernel_regularizer\": null, \"bias_regularizer\": null, \"activity_regularizer\": null, \"kernel_constraint\": null, \"bias_constraint\": null}, \"input_spec\": {\"class_name\": \"InputSpec\", \"config\": {\"dtype\": null, \"shape\": null, \"ndim\": null, \"max_ndim\": null, \"min_ndim\": 2, \"axes\": {\"-1\": 214}}}, \"build_input_shape\": {\"class_name\": \"TensorShape\", \"items\": [null, 214]}}"
      }
    }
    nodes {
      children {
        node_id: 15
        local_name: "kernel"
      }
      children {
        node_id: 16
        local_name: "bias"
      }
      children {
        node_id: 17
        local_name: "regularization_losses"
      }
      children {
        node_id: 18
        local_name: "variables"
      }
      children {
        node_id: 19
        local_name: "trainable_variables"
      }
      children {
        node_id: 20
        local_name: "keras_api"
      }
      children {
        node_id: 52
        local_name: "__call__"
      }
      children {
        node_id: 53
        local_name: "call_and_return_all_conditional_losses"
      }
      user_object {
        identifier: "_tf_keras_layer"
        version {
          producer: 1
          min_consumer: 1
        }
        metadata: "{\"class_name\": \"Dense\", \"name\": \"dense_1\", \"trainable\": true, \"expects_training_arg\": false, \"dtype\": \"float32\", \"batch_input_shape\": null, \"stateful\": false, \"config\": {\"name\": \"dense_1\", \"trainable\": true, \"dtype\": \"float32\", \"units\": 1, \"activation\": \"linear\", \"use_bias\": true, \"kernel_initializer\": {\"class_name\": \"GlorotUniform\", \"config\": {\"seed\": null}}, \"bias_initializer\": {\"class_name\": \"Zeros\", \"config\": {}}, \"kernel_regularizer\": null, \"bias_regularizer\": null, \"activity_regularizer\": null, \"kernel_constraint\": null, \"bias_constraint\": null}, \"input_spec\": {\"class_name\": \"InputSpec\", \"config\": {\"dtype\": null, \"shape\": null, \"ndim\": null, \"max_ndim\": null, \"min_ndim\": 2, \"axes\": {\"-1\": 100}}}, \"build_input_shape\": {\"class_name\": \"TensorShape\", \"items\": [null, 100]}}"
      }
    }
    nodes {
      user_object {
        identifier: "optimizer"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 9
        local_name: "0"
      }
      children {
        node_id: 10
        local_name: "1"
      }
      children {
        node_id: 15
        local_name: "2"
      }
      children {
        node_id: 16
        local_name: "3"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 9
        local_name: "0"
      }
      children {
        node_id: 10
        local_name: "1"
      }
      children {
        node_id: 15
        local_name: "2"
      }
      children {
        node_id: 16
        local_name: "3"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 21
        local_name: "layers"
      }
      children {
        node_id: 22
        local_name: "layer_regularization_losses"
      }
      children {
        node_id: 23
        local_name: "non_trainable_variables"
      }
      children {
        node_id: 24
        local_name: "layer_metrics"
      }
      children {
        node_id: 4
        local_name: "regularization_losses"
      }
      children {
        node_id: 25
        local_name: "metrics"
      }
      children {
        node_id: 5
        local_name: "variables"
      }
      children {
        node_id: 6
        local_name: "trainable_variables"
      }
      children {
        node_id: 47
        local_name: "__call__"
      }
      children {
        node_id: 48
        local_name: "_default_save_signature"
      }
      children {
        node_id: 49
        local_name: "call_and_return_all_conditional_losses"
      }
      children {
        node_id: 49
        local_name: "call_and_return_conditional_losses"
      }
      user_object {
        identifier: "_generic_user_object"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 54
        local_name: "serving_default"
      }
      user_object {
        identifier: "signature_map"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
          dim {
            size: 214
          }
          dim {
            size: 100
          }
        }
        trainable: true
        name: "dense/kernel"
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
          dim {
            size: 100
          }
        }
        trainable: true
        name: "dense/bias"
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 9
        local_name: "0"
      }
      children {
        node_id: 10
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 9
        local_name: "0"
      }
      children {
        node_id: 10
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 26
        local_name: "layers"
      }
      children {
        node_id: 27
        local_name: "layer_regularization_losses"
      }
      children {
        node_id: 28
        local_name: "non_trainable_variables"
      }
      children {
        node_id: 29
        local_name: "layer_metrics"
      }
      children {
        node_id: 11
        local_name: "regularization_losses"
      }
      children {
        node_id: 30
        local_name: "metrics"
      }
      children {
        node_id: 12
        local_name: "variables"
      }
      children {
        node_id: 13
        local_name: "trainable_variables"
      }
      children {
        node_id: 50
        local_name: "__call__"
      }
      children {
        node_id: 51
        local_name: "call_and_return_all_conditional_losses"
      }
      children {
        node_id: 51
        local_name: "call_and_return_conditional_losses"
      }
      user_object {
        identifier: "_generic_user_object"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
          dim {
            size: 100
          }
          dim {
            size: 1
          }
        }
        trainable: true
        name: "dense_1/kernel"
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
          dim {
            size: 1
          }
        }
        trainable: true
        name: "dense_1/bias"
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 15
        local_name: "0"
      }
      children {
        node_id: 16
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 15
        local_name: "0"
      }
      children {
        node_id: 16
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 31
        local_name: "layers"
      }
      children {
        node_id: 32
        local_name: "layer_regularization_losses"
      }
      children {
        node_id: 33
        local_name: "non_trainable_variables"
      }
      children {
        node_id: 34
        local_name: "layer_metrics"
      }
      children {
        node_id: 17
        local_name: "regularization_losses"
      }
      children {
        node_id: 35
        local_name: "metrics"
      }
      children {
        node_id: 18
        local_name: "variables"
      }
      children {
        node_id: 19
        local_name: "trainable_variables"
      }
      children {
        node_id: 52
        local_name: "__call__"
      }
      children {
        node_id: 53
        local_name: "call_and_return_all_conditional_losses"
      }
      children {
        node_id: 53
        local_name: "call_and_return_conditional_losses"
      }
      user_object {
        identifier: "_generic_user_object"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 1
        local_name: "0"
      }
      children {
        node_id: 2
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_dict_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 36
        local_name: "0"
      }
      children {
        node_id: 37
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_dict_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_dict_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 38
        local_name: "total"
      }
      children {
        node_id: 39
        local_name: "count"
      }
      children {
        node_id: 40
        local_name: "variables"
      }
      children {
        node_id: 41
        local_name: "keras_api"
      }
      user_object {
        identifier: "_tf_keras_metric"
        version {
          producer: 1
          min_consumer: 1
        }
        metadata: "{\"class_name\": \"Mean\", \"name\": \"loss\", \"dtype\": \"float32\", \"config\": {\"name\": \"loss\", \"dtype\": \"float32\"}}"
      }
    }
    nodes {
      children {
        node_id: 42
        local_name: "total"
      }
      children {
        node_id: 43
        local_name: "count"
      }
      children {
        node_id: 44
        local_name: "_fn_kwargs"
      }
      children {
        node_id: 45
        local_name: "variables"
      }
      children {
        node_id: 46
        local_name: "keras_api"
      }
      user_object {
        identifier: "_tf_keras_metric"
        version {
          producer: 1
          min_consumer: 1
        }
        metadata: "{\"class_name\": \"MeanMetricWrapper\", \"name\": \"mean_squared_error\", \"dtype\": \"float32\", \"config\": {\"name\": \"mean_squared_error\", \"dtype\": \"float32\", \"fn\": \"mean_squared_error\"}}"
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
        }
        synchronization: VARIABLE_SYNCHRONIZATION_ON_READ
        aggregation: VARIABLE_AGGREGATION_SUM
        name: "total"
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
        }
        synchronization: VARIABLE_SYNCHRONIZATION_ON_READ
        aggregation: VARIABLE_AGGREGATION_SUM
        name: "count"
      }
    }
    nodes {
      children {
        node_id: 38
        local_name: "0"
      }
      children {
        node_id: 39
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 40
        local_name: "variables"
      }
      user_object {
        identifier: "_generic_user_object"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
        }
        synchronization: VARIABLE_SYNCHRONIZATION_ON_READ
        aggregation: VARIABLE_AGGREGATION_SUM
        name: "total"
      }
    }
    nodes {
      variable {
        dtype: DT_FLOAT
        shape {
        }
        synchronization: VARIABLE_SYNCHRONIZATION_ON_READ
        aggregation: VARIABLE_AGGREGATION_SUM
        name: "count"
      }
    }
    nodes {
      user_object {
        identifier: "trackable_dict_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 42
        local_name: "0"
      }
      children {
        node_id: 43
        local_name: "1"
      }
      user_object {
        identifier: "trackable_list_wrapper"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      children {
        node_id: 45
        local_name: "variables"
      }
      user_object {
        identifier: "_generic_user_object"
        version {
          producer: 1
          min_consumer: 1
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference_sequential_layer_call_fn_6629"
        concrete_functions: "__inference_sequential_layer_call_fn_6733"
        concrete_functions: "__inference_sequential_layer_call_fn_6720"
        concrete_functions: "__inference_sequential_layer_call_fn_6656"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                    values {
                      string_value: "self"
                    }
                    values {
                      string_value: "inputs"
                    }
                    values {
                      string_value: "training"
                    }
                    values {
                      string_value: "mask"
                    }
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  list_value {
                    values {
                      bool_value: false
                    }
                    values {
                      none_value {
                      }
                    }
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  dict_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          is_method: true
          input_signature {
            none_value {
            }
          }
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference__wrapped_model_6528"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  string_value: "args"
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          input_signature {
            tuple_value {
              values {
                tensor_spec_value {
                  name: "input_1"
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 214
                    }
                  }
                  dtype: DT_INT32
                }
              }
            }
          }
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference_sequential_layer_call_and_return_conditional_losses_6689"
        concrete_functions: "__inference_sequential_layer_call_and_return_conditional_losses_6587"
        concrete_functions: "__inference_sequential_layer_call_and_return_conditional_losses_6707"
        concrete_functions: "__inference_sequential_layer_call_and_return_conditional_losses_6601"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                    values {
                      string_value: "self"
                    }
                    values {
                      string_value: "inputs"
                    }
                    values {
                      string_value: "training"
                    }
                    values {
                      string_value: "mask"
                    }
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  list_value {
                    values {
                      bool_value: false
                    }
                    values {
                      none_value {
                      }
                    }
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  dict_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          is_method: true
          input_signature {
            none_value {
            }
          }
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference_dense_layer_call_fn_6754"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                    values {
                      string_value: "self"
                    }
                    values {
                      string_value: "inputs"
                    }
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          is_method: true
          input_signature {
            none_value {
            }
          }
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference_dense_layer_call_and_return_conditional_losses_6745"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                    values {
                      string_value: "self"
                    }
                    values {
                      string_value: "inputs"
                    }
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          is_method: true
          input_signature {
            none_value {
            }
          }
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference_dense_1_layer_call_fn_6773"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                    values {
                      string_value: "self"
                    }
                    values {
                      string_value: "inputs"
                    }
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          is_method: true
          input_signature {
            none_value {
            }
          }
        }
      }
    }
    nodes {
      function {
        concrete_functions: "__inference_dense_1_layer_call_and_return_conditional_losses_6764"
        function_spec {
          fullargspec {
            named_tuple_value {
              name: "FullArgSpec"
              values {
                key: "args"
                value {
                  list_value {
                    values {
                      string_value: "self"
                    }
                    values {
                      string_value: "inputs"
                    }
                  }
                }
              }
              values {
                key: "varargs"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "varkw"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "defaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "kwonlyargs"
                value {
                  list_value {
                  }
                }
              }
              values {
                key: "kwonlydefaults"
                value {
                  none_value {
                  }
                }
              }
              values {
                key: "annotations"
                value {
                  dict_value {
                  }
                }
              }
            }
          }
          is_method: true
          input_signature {
            none_value {
            }
          }
        }
      }
    }
    nodes {
      bare_concrete_function {
        concrete_function_name: "__inference_signature_wrapper_6671"
        argument_keywords: "input_1"
        allowed_positional_arguments: 1
      }
    }
    concrete_functions {
      key: "__inference__wrapped_model_6528"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "input_1"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          dict_value {
            fields {
              key: "output_1"
              value {
                tensor_spec_value {
                  name: "output_1"
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 1
                    }
                  }
                  dtype: DT_FLOAT
                }
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_dense_1_layer_call_and_return_conditional_losses_6764"
      value {
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 100
                      }
                    }
                    dtype: DT_FLOAT
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tuple_value {
            values {
              tensor_spec_value {
                name: "0"
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
                dtype: DT_FLOAT
              }
            }
            values {
              list_value {
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_dense_1_layer_call_fn_6773"
      value {
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 100
                      }
                    }
                    dtype: DT_FLOAT
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tensor_spec_value {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 1
              }
            }
            dtype: DT_FLOAT
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_dense_layer_call_and_return_conditional_losses_6745"
      value {
        bound_inputs: 9
        bound_inputs: 10
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tuple_value {
            values {
              tensor_spec_value {
                name: "0"
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 100
                  }
                }
                dtype: DT_FLOAT
              }
            }
            values {
              list_value {
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_dense_layer_call_fn_6754"
      value {
        bound_inputs: 9
        bound_inputs: 10
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tensor_spec_value {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 100
              }
            }
            dtype: DT_FLOAT
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_and_return_conditional_losses_6587"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "input_1"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: true
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tuple_value {
            values {
              tensor_spec_value {
                name: "0"
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
                dtype: DT_FLOAT
              }
            }
            values {
              list_value {
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_and_return_conditional_losses_6601"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "input_1"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: false
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tuple_value {
            values {
              tensor_spec_value {
                name: "0"
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
                dtype: DT_FLOAT
              }
            }
            values {
              list_value {
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_and_return_conditional_losses_6689"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: true
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tuple_value {
            values {
              tensor_spec_value {
                name: "0"
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
                dtype: DT_FLOAT
              }
            }
            values {
              list_value {
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_and_return_conditional_losses_6707"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: false
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tuple_value {
            values {
              tensor_spec_value {
                name: "0"
                shape {
                  dim {
                    size: -1
                  }
                  dim {
                    size: 1
                  }
                }
                dtype: DT_FLOAT
              }
            }
            values {
              list_value {
              }
            }
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_fn_6629"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "input_1"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: true
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tensor_spec_value {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 1
              }
            }
            dtype: DT_FLOAT
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_fn_6656"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "input_1"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: false
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tensor_spec_value {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 1
              }
            }
            dtype: DT_FLOAT
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_fn_6720"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: true
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tensor_spec_value {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 1
              }
            }
            dtype: DT_FLOAT
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_sequential_layer_call_fn_6733"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
                values {
                  tensor_spec_value {
                    name: "inputs"
                    shape {
                      dim {
                        size: -1
                      }
                      dim {
                        size: 214
                      }
                    }
                    dtype: DT_INT32
                  }
                }
                values {
                  bool_value: false
                }
                values {
                  none_value {
                  }
                }
              }
            }
            values {
              dict_value {
              }
            }
          }
        }
        output_signature {
          tensor_spec_value {
            shape {
              dim {
                size: -1
              }
              dim {
                size: 1
              }
            }
            dtype: DT_FLOAT
          }
        }
      }
    }
    concrete_functions {
      key: "__inference_signature_wrapper_6671"
      value {
        bound_inputs: 9
        bound_inputs: 10
        bound_inputs: 15
        bound_inputs: 16
        canonicalized_input_signature {
          tuple_value {
            values {
              tuple_value {
              }
            }
            values {
              dict_value {
                fields {
                  key: "input_1"
                  value {
                    tensor_spec_value {
                      name: "input_1"
                      shape {
                        dim {
                          size: -1
                        }
                        dim {
                          size: 214
                        }
                      }
                      dtype: DT_INT32
                    }
                  }
                }
              }
            }
          }
        }
        output_signature {
          dict_value {
            fields {
              key: "output_1"
              value {
                tensor_spec_value {
                  name: "output_1"
                  shape {
                    dim {
                      size: -1
                    }
                    dim {
                      size: 1
                    }
                  }
                  dtype: DT_FLOAT
                }
              }
            }
          }
        }
      }
    }
  }
}

