package natpmp

import 

type callObserver interface {
	observeCall(msg []byte, result []byte, err error)
}

// A caller that records the RPC call.
type recorder struct {
	child    caller
	observer callObserver
}

func ( *recorder) ( []byte,  time.Duration) ( []byte,  error) {
	,  = .child.call(, )
	.observer.observeCall(, , )
	return
}