private static Cmd?GetNext(Func <int, Cmd?> getCommandAt, Cmd nextCommand) => getCommandAt(nextCommand.Index + 1);
private static Cmd?GetJump(Func <int, Cmd?> getCommandAt, Cmd nextCommand) => getCommandAt(nextCommand.Index + nextCommand.Value);