A typical use is provided in [mlp.py](https://fleuret.org/git-extract/agtree2dot/mlp.py):
 
 ```python
-import subprocess
-
 from torch import nn
 from torch.nn import functional as fn
 from torch import Tensor
-from torch.autograd import Variable
 from torch.nn import Module
 
 import agtree2dot
         return x
 
 mlp = MLP(10, 20, 1)
-input = Variable(Tensor(100, 10).normal_())
-target = Variable(Tensor(100).normal_())
+input = Tensor(100, 10).normal_()
+target = Tensor(100, 1).normal_()
 output = mlp(input)
 criterion = nn.MSELoss()
 loss = criterion(output, target)
 print('Generated mlp.dot')
 
 try:
-    subprocess.check_call(["dot", "mlp.dot", "-Lg", "-T", "pdf", "-o", "mlp.pdf" ])
+    subprocess.check_call(['dot', 'mlp.dot', '-Lg', '-T', 'pdf', '-o', 'mlp.pdf' ])
+
 except subprocess.CalledProcessError:
     print('Calling the dot command failed. Is Graphviz installed?')
     sys.exit(1)