docs: @Override
      public Fact getFactAfterLocation(Location location) throws DataflowAnalysisException {
          BasicBlock basicBlock = location.getBasicBlock();
          InstructionHandle handle = location.getHandle();
  
          if (handle == (isForwards() ? basicBlock.getLastInstruction() : basicBlock.getFirstInstruction())) {
              return getResultFact(basicBlock);
          } else {
              return getFactAtLocation(new Location(isForwards() ? handle.getNext() : handle.getPrev(), basicBlock));
          }
      }