Sorry about this, the fixes to the tutorial are to the autograd Function’s forward and backward.
In forward, the change needed is:
12c12
<         variables = outputs[1:] + [weights, old_cell]
---
>         variables = outputs[1:] + [weights]


In backward, the change needed is:
21c21
<         d_old_h, d_input, d_weights, d_bias, d_old_cell, d_gates = outputs
---
>         d_old_h, d_input, d_weights, d_bias, d_old_cell = outputs

I’m fixing the tutorial now.