This assumption is wrong.

```
A:
B: before A and after C
C: before A
```

The resulting order should be ``C B A``