The main drawback is that  this requires quite a bit of logic— knowing what to do in the middle,  when to reverse the process, and exactly how to reverse it.
Его основной недостаток — то, что тут необходимо много логических заключений: нужно знать, что делать в центре, когда нужно изменить направление, и как именно это сделать.