class JStaticInvokeExpr extends AbstractStaticInvokeExpr {

  public JStaticInvokeExpr(SootMethodRef methodRef, List<? extends Value> args) {
    super(methodRef, new ValueBox[args.size()]);

    final Jimple jimp = Jimple.v();
    for (ListIterator<? extends Value> it = args.listIterator(); it.hasNext();) {
      Value v = it.next();
      this.argBoxes[it.previousIndex()] = jimp.newImmediateBox(v);
    }
  }

  @Override
  public Object clone() {<FILL_FUNCTION_BODY>}
}

    final int count = getArgCount();
    List<Value> clonedArgs = new ArrayList<Value>(count);
    for (int i = 0; i < count; i++) {
      clonedArgs.add(Jimple.cloneIfNecessary(getArg(i)));
    }
    return new JStaticInvokeExpr(methodRef, clonedArgs);
  
<methods>public void apply(soot.util.Switch) ,public void convertToBaf(soot.jimple.JimpleToBafContext, List<soot.Unit>) ,public int equivHashCode() ,public boolean equivTo(java.lang.Object) ,public java.lang.String toString() ,public void toString(soot.UnitPrinter) <variables>