use crate::burn_backend::onnx::{Source::*, Transform::*, Weight};
pub(crate) const WEIGHTS: &[Weight] = &[
Weight { path: "constant1", shape: Some(&[13088, 640]), source: Param("decoder.prediction.embed.weight", Copy) },
Weight { path: "linear1.bias", shape: Some(&[640]), source: Param("joint.enc.bias", Copy) },
Weight { path: "linear1.weight", shape: Some(&[1024, 640]), source: Param("/joint/enc/MatMul#1", Copy) },
Weight { path: "linear2.bias", shape: Some(&[640]), source: Param("joint.pred.bias", Copy) },
Weight { path: "linear2.weight", shape: Some(&[640, 640]), source: Param("/joint/pred/MatMul#1", Copy) },
Weight { path: "linear3.bias", shape: Some(&[13088]), source: Param("joint.joint_net.2.bias", Copy) },
Weight { path: "linear3.weight", shape: Some(&[640, 13088]), source: Param("/joint/joint_net/joint_net.2/MatMul#1", Copy) },
Weight { path: "lstm1.cell_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm1.cell_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#2", RowsT(1920, 2560)) },
Weight { path: "lstm1.cell_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM#3", BiasSum(1920, 2560, 4480, 5120)) },
Weight { path: "lstm1.cell_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#1", RowsT(1920, 2560)) },
Weight { path: "lstm1.forget_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm1.forget_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#2", RowsT(1280, 1920)) },
Weight { path: "lstm1.forget_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM#3", BiasSum(1280, 1920, 3840, 4480)) },
Weight { path: "lstm1.forget_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#1", RowsT(1280, 1920)) },
Weight { path: "lstm1.input_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm1.input_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#2", RowsT(0, 640)) },
Weight { path: "lstm1.input_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM#3", BiasSum(0, 640, 2560, 3200)) },
Weight { path: "lstm1.input_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#1", RowsT(0, 640)) },
Weight { path: "lstm1.output_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm1.output_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#2", RowsT(640, 1280)) },
Weight { path: "lstm1.output_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM#3", BiasSum(640, 1280, 3200, 3840)) },
Weight { path: "lstm1.output_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM#1", RowsT(640, 1280)) },
Weight { path: "lstm2.cell_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm2.cell_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#2", RowsT(1920, 2560)) },
Weight { path: "lstm2.cell_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#3", BiasSum(1920, 2560, 4480, 5120)) },
Weight { path: "lstm2.cell_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#1", RowsT(1920, 2560)) },
Weight { path: "lstm2.forget_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm2.forget_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#2", RowsT(1280, 1920)) },
Weight { path: "lstm2.forget_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#3", BiasSum(1280, 1920, 3840, 4480)) },
Weight { path: "lstm2.forget_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#1", RowsT(1280, 1920)) },
Weight { path: "lstm2.input_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm2.input_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#2", RowsT(0, 640)) },
Weight { path: "lstm2.input_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#3", BiasSum(0, 640, 2560, 3200)) },
Weight { path: "lstm2.input_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#1", RowsT(0, 640)) },
Weight { path: "lstm2.output_gate.hidden_transform.bias", shape: Some(&[640]), source: Zeros },
Weight { path: "lstm2.output_gate.hidden_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#2", RowsT(640, 1280)) },
Weight { path: "lstm2.output_gate.input_transform.bias", shape: Some(&[640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#3", BiasSum(640, 1280, 3200, 3840)) },
Weight { path: "lstm2.output_gate.input_transform.weight", shape: Some(&[640, 640]), source: Param("/decoder/dec_rnn/lstm/LSTM_1#1", RowsT(640, 1280)) },
];