code: func opcodePick(op *parsedOpcode, vm *Engine) error {
  	val, err := vm.dstack.PopInt()
  	if err != nil {
  		return err
  	}
  
  	return vm.dstack.PickN(val.Int32())
  }
docs: // opcodePick treats the top item on the data stack as an integer and duplicates
  // the item on the stack that number of items back to the top.
  //
  // Stack transformation: [xn ... x2 x1 x0 n] -> [xn ... x2 x1 x0 xn]
  // Example with n=1: [x2 x1 x0 1] -> [x2 x1 x0 x1]
  // Example with n=2: [x2 x1 x0 2] -> [x2 x1 x0 x2]