AmanC007 commited on
Commit
17f41e8
·
verified ·
1 Parent(s): f83accf

Upload folder using huggingface_hub

Browse files
.gitattributes CHANGED
@@ -689,3 +689,5 @@ abl-no_map-s1/000040304640/ocdbt.process_0/d/c4a69c26cb2966a531555ecac8d0ede1 fi
689
  abl-ablation-s1/000040304640/ocdbt.process_0/d/21f37188236f9dcd741eefe2ba994f4a filter=lfs diff=lfs merge=lfs -text
690
  abl-ablation-s1/000040304640/ocdbt.process_0/d/8857c8dc4c7bccf0211c8ad45d0e8df2 filter=lfs diff=lfs merge=lfs -text
691
  abl-ablation-s1/000040304640/ocdbt.process_0/d/fc22da797320e7a653e478c7ef4167d1 filter=lfs diff=lfs merge=lfs -text
 
 
 
689
  abl-ablation-s1/000040304640/ocdbt.process_0/d/21f37188236f9dcd741eefe2ba994f4a filter=lfs diff=lfs merge=lfs -text
690
  abl-ablation-s1/000040304640/ocdbt.process_0/d/8857c8dc4c7bccf0211c8ad45d0e8df2 filter=lfs diff=lfs merge=lfs -text
691
  abl-ablation-s1/000040304640/ocdbt.process_0/d/fc22da797320e7a653e478c7ef4167d1 filter=lfs diff=lfs merge=lfs -text
692
+ abl-no_support-s1/000040304640/ocdbt.process_0/d/9aab9effaa5f88766a76f1743ca9fb16 filter=lfs diff=lfs merge=lfs -text
693
+ abl-no_support-s1/000040304640/ocdbt.process_0/d/ed0bf37e88f7f9a605f8b89941a0c310 filter=lfs diff=lfs merge=lfs -text
abl-no_support-s1/000040304640/_CHECKPOINT_METADATA ADDED
@@ -0,0 +1 @@
 
 
1
+ {"item_handlers": "orbax.checkpoint._src.handlers.pytree_checkpoint_handler.PyTreeCheckpointHandler", "metrics": {}, "performance_metrics": {}, "init_timestamp_nsecs": 1788119017128722331, "commit_timestamp_nsecs": 1788119017173251753, "custom_metadata": {}}
abl-no_support-s1/000040304640/_METADATA ADDED
@@ -0,0 +1 @@
 
 
1
+ {"tree_metadata": {"('0', 'mean', 'privileged_state')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "mean", "key_type": 2}, {"key": "privileged_state", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [273]}}, "('0', 'mean', 'state')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "mean", "key_type": 2}, {"key": "state", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [156]}}, "('0', 'std', 'privileged_state')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "std", "key_type": 2}, {"key": "privileged_state", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [273]}}, "('0', 'std', 'state')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "std", "key_type": 2}, {"key": "state", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [156]}}, "('0', 'count', 'hi')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "count", "key_type": 2}, {"key": "hi", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": []}}, "('0', 'count', 'lo')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "count", "key_type": 2}, {"key": "lo", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": []}}, "('0', 'summed_variance', 'privileged_state')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "summed_variance", "key_type": 2}, {"key": "privileged_state", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [273]}}, "('0', 'summed_variance', 'state')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "summed_variance", "key_type": 2}, {"key": "state", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [156]}}, "('0', 'std_eps')": {"key_metadata": [{"key": "0", "key_type": 1}, {"key": "std_eps", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": []}}, "('1', 'params', 'hidden_0', 'bias')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_0", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [512]}}, "('1', 'params', 'hidden_0', 'kernel')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_0", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [156, 512]}}, "('1', 'params', 'hidden_1', 'bias')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_1", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [256]}}, "('1', 'params', 'hidden_1', 'kernel')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_1", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [512, 256]}}, "('1', 'params', 'hidden_2', 'bias')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_2", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [128]}}, "('1', 'params', 'hidden_2', 'kernel')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_2", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [256, 128]}}, "('1', 'params', 'hidden_3', 'bias')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_3", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [58]}}, "('1', 'params', 'hidden_3', 'kernel')": {"key_metadata": [{"key": "1", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_3", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [128, 58]}}, "('2', 'params', 'hidden_0', 'bias')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_0", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [512]}}, "('2', 'params', 'hidden_0', 'kernel')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_0", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [273, 512]}}, "('2', 'params', 'hidden_1', 'bias')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_1", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [256]}}, "('2', 'params', 'hidden_1', 'kernel')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_1", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [512, 256]}}, "('2', 'params', 'hidden_2', 'bias')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_2", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [128]}}, "('2', 'params', 'hidden_2', 'kernel')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_2", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [256, 128]}}, "('2', 'params', 'hidden_3', 'bias')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_3", "key_type": 2}, {"key": "bias", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [1]}}, "('2', 'params', 'hidden_3', 'kernel')": {"key_metadata": [{"key": "2", "key_type": 1}, {"key": "params", "key_type": 2}, {"key": "hidden_3", "key_type": 2}, {"key": "kernel", "key_type": 2}], "value_metadata": {"value_type": "jax.Array", "skip_deserialize": false, "write_shape": [128, 1]}}}, "use_ocdbt": true, "use_zarr3": false, "store_array_data_equal_to_fill_value": true, "custom_metadata": null}
abl-no_support-s1/000040304640/_sharding ADDED
@@ -0,0 +1 @@
 
 
1
+ {"MC5jb3VudC5oaQ==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5jb3VudC5sbw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5tZWFuLnByaXZpbGVnZWRfc3RhdGU=":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5tZWFuLnN0YXRl":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5zdGQuc3RhdGU=":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5zdGQucHJpdmlsZWdlZF9zdGF0ZQ==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5zdGRfZXBz":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5zdW1tZWRfdmFyaWFuY2Uuc3RhdGU=":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MC5zdW1tZWRfdmFyaWFuY2UucHJpdmlsZWdlZF9zdGF0ZQ==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzAuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzAua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzEuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzEua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzIuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzIua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzMuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","MS5wYXJhbXMuaGlkZGVuXzMua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzAuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzAua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzEuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzEua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzIuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzIua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzMuYmlhcw==":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}","Mi5wYXJhbXMuaGlkZGVuXzMua2VybmVs":"{\"sharding_type\": \"SingleDeviceSharding\", \"device_str\": \"cuda:0\"}"}
abl-no_support-s1/000040304640/array_metadatas/process_0 ADDED
@@ -0,0 +1 @@
 
 
1
+ {"array_metadatas": [{"array_metadata": {"param_name": "0.mean.privileged_state", "write_shape": [273], "chunk_shape": [273], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.mean.state", "write_shape": [156], "chunk_shape": [156], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.std.privileged_state", "write_shape": [273], "chunk_shape": [273], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.std.state", "write_shape": [156], "chunk_shape": [156], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.count.hi", "write_shape": [], "chunk_shape": [], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.count.lo", "write_shape": [], "chunk_shape": [], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.summed_variance.privileged_state", "write_shape": [273], "chunk_shape": [273], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.summed_variance.state", "write_shape": [156], "chunk_shape": [156], "ext_metadata": null}}, {"array_metadata": {"param_name": "0.std_eps", "write_shape": [], "chunk_shape": [], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_0.bias", "write_shape": [512], "chunk_shape": [512], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_0.kernel", "write_shape": [156, 512], "chunk_shape": [156, 512], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_1.bias", "write_shape": [256], "chunk_shape": [256], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_1.kernel", "write_shape": [512, 256], "chunk_shape": [512, 256], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_2.bias", "write_shape": [128], "chunk_shape": [128], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_2.kernel", "write_shape": [256, 128], "chunk_shape": [256, 128], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_3.bias", "write_shape": [58], "chunk_shape": [58], "ext_metadata": null}}, {"array_metadata": {"param_name": "1.params.hidden_3.kernel", "write_shape": [128, 58], "chunk_shape": [128, 58], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_0.bias", "write_shape": [512], "chunk_shape": [512], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_0.kernel", "write_shape": [273, 512], "chunk_shape": [273, 512], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_1.bias", "write_shape": [256], "chunk_shape": [256], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_1.kernel", "write_shape": [512, 256], "chunk_shape": [512, 256], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_2.bias", "write_shape": [128], "chunk_shape": [128], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_2.kernel", "write_shape": [256, 128], "chunk_shape": [256, 128], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_3.bias", "write_shape": [1], "chunk_shape": [1], "ext_metadata": null}}, {"array_metadata": {"param_name": "2.params.hidden_3.kernel", "write_shape": [128, 1], "chunk_shape": [128, 1], "ext_metadata": null}}]}
abl-no_support-s1/000040304640/commit_success.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ Checkpoint commit was successful to /tmp/ft_no_support/000040304640
abl-no_support-s1/000040304640/d/443914a673cb5c18d5dcbcc96c7ff466 ADDED
Binary file (6.55 kB). View file
 
abl-no_support-s1/000040304640/manifest.ocdbt ADDED
Binary file (115 Bytes). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/15766e85e57403e0747713a5860336b4 ADDED
Binary file (6.54 kB). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/1a1b3d7c1e10714fb5a85cc426ceb7dc ADDED
Binary file (489 Bytes). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/22946337ceb68305d48feb6b9ba52c0c ADDED
Binary file (1.64 kB). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/5410971b4e3327ea56b323936b685c6e ADDED
Binary file (2.53 kB). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/73a73ddf0954201eb4ce958aa27d669c ADDED
Binary file (448 Bytes). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/9aab9effaa5f88766a76f1743ca9fb16 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:034a822db654194983fdca9913bb857c2bfe3ea01d8667fb6a999aa6e25ce9a1
3
+ size 125897
abl-no_support-s1/000040304640/ocdbt.process_0/d/debc76e0249b9029388ba6d07c3736fa ADDED
Binary file (191 Bytes). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/d/ed0bf37e88f7f9a605f8b89941a0c310 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:39f552d370a92778db1299e76901b918599e46160aec4339319f0e998cd8b720
3
+ size 1901603
abl-no_support-s1/000040304640/ocdbt.process_0/d/ee00e47158aa09e8d56413f07581ee28 ADDED
Binary file (28.2 kB). View file
 
abl-no_support-s1/000040304640/ocdbt.process_0/manifest.ocdbt ADDED
Binary file (440 Bytes). View file
 
abl-no_support-s1/000040304640/ppo_network_config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"action_size": 29, "network_factory_kwargs": {"activation": "silu", "distribution_type": "tanh_normal", "init_noise_std": 1.0, "mean_clip_scale": null, "mean_kernel_init_fn": null, "mean_kernel_init_kwargs": null, "noise_std_type": "scalar", "num_quantiles": 32, "policy_hidden_layer_sizes": [512, 256, 128], "policy_network_kernel_init_fn": "lecun_uniform", "policy_network_kernel_init_kwargs": null, "policy_obs_key": "state", "state_dependent_std": false, "use_distributional_critic": false, "value_hidden_layer_sizes": [512, 256, 128], "value_network_kernel_init_fn": "lecun_uniform", "value_network_kernel_init_kwargs": null, "value_obs_key": "privileged_state"}, "normalize_observations": true, "observation_size": {"privileged_state": [273], "state": [156]}}
abl-no_support-s1/finetune_report.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "arm": "no_support",
3
  "flavor": "a100-large",
4
- "reached_step": 33587200,
5
  "best_reward": 14.553594589233398,
6
  "history": [
7
  {
@@ -98,6 +98,25 @@
98
  "eval/episode_reward/snow_stumble_std": 0.0,
99
  "eval/episode_snow_contact_fraction_std": 217.6365966796875,
100
  "eval/episode_snow_depth_under_feet_std": 14.09239673614502
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
101
  }
102
  ]
103
  }
 
1
  {
2
  "arm": "no_support",
3
  "flavor": "a100-large",
4
+ "reached_step": 40304640,
5
  "best_reward": 14.553594589233398,
6
  "history": [
7
  {
 
98
  "eval/episode_reward/snow_stumble_std": 0.0,
99
  "eval/episode_snow_contact_fraction_std": 217.6365966796875,
100
  "eval/episode_snow_depth_under_feet_std": 14.09239673614502
101
+ },
102
+ {
103
+ "step": 33587200,
104
+ "reward": 12.493647575378418,
105
+ "episode_length": 626.0,
106
+ "elapsed_s": 512.4,
107
+ "steps_per_second": 65552,
108
+ "eval/episode_reward/snow_clearance": 31.286518096923828,
109
+ "eval/episode_reward/snow_flat_efficiency": -0.4044603109359741,
110
+ "eval/episode_reward/snow_overload": -1.592694640159607,
111
+ "eval/episode_reward/snow_stumble": 0.0,
112
+ "eval/episode_snow_contact_fraction": 350.49609375,
113
+ "eval/episode_snow_depth_under_feet": 11.662062644958496,
114
+ "eval/episode_reward/snow_clearance_std": 20.749740600585938,
115
+ "eval/episode_reward/snow_flat_efficiency_std": 0.33078646659851074,
116
+ "eval/episode_reward/snow_overload_std": 3.2081799507141113,
117
+ "eval/episode_reward/snow_stumble_std": 0.0,
118
+ "eval/episode_snow_contact_fraction_std": 216.64720153808594,
119
+ "eval/episode_snow_depth_under_feet_std": 11.44032096862793
120
  }
121
  ]
122
  }