class SputInstruction extends FieldInstruction {

  public SputInstruction(Instruction instruction, int codeAdress) {
    super(instruction, codeAdress);
  }

  @Override
  public void jimplify(DexBody body) {<FILL_FUNCTION_BODY>}

  @Override
  protected Type getTargetType(DexBody body) {
    FieldReference f = (FieldReference) ((ReferenceInstruction) instruction).getReference();
    return DexType.toSoot(f.getType());
  }
}

    int source = ((OneRegisterInstruction) instruction).getRegisterA();
    FieldReference f = (FieldReference) ((ReferenceInstruction) instruction).getReference();
    StaticFieldRef instanceField = Jimple.v().newStaticFieldRef(getStaticSootFieldRef(f));
    Local sourceValue = body.getRegisterLocal(source);
    AssignStmt assign = getAssignStmt(body, sourceValue, instanceField);
    setUnit(assign);
    addTags(assign);
    body.add(assign);

    if (IDalvikTyper.ENABLE_DVKTYPER) {
      DalvikTyper.v().setType(assign.getRightOpBox(), instanceField.getType(), true);
    }
  
<methods>public void <init>(org.jf.dexlib2.iface.instruction.Instruction, int) ,public Set<soot.Type> introducedTypes() <variables>