code: func (arguments Arguments) Unpack(v interface{}, data []byte) error {
  	// make sure the passed value is arguments pointer
  	if reflect.Ptr != reflect.ValueOf(v).Kind() {
  		return fmt.Errorf("abi: Unpack(non-pointer %T)", v)
  	}
  	marshalledValues, err := arguments.UnpackValues(data)
  	if err != nil {
  		return err
  	}
  	if arguments.isTuple() {
  		return arguments.unpackTuple(v, marshalledValues)
  	}
  	return arguments.unpackAtomic(v, marshalledValues[0])
  }
docs: // Unpack performs the operation hexdata -> Go format