func Get(p interface{}, d ...interface{}) interface{} {
	var (
		val interface{}
		ok  bool
	)

	if val, ok = GetOk(p); ok {
		return val
	}

	if len(d) > 0 {
		return d[0]
	}

	return val
}
// Get returns the value of p, either p itself, or, if p is a pointer, the
// value that p points to. d is an optional default value to be returned
// in the event that p is nil. If d is not specified, and p is nil, a
// type-appropriate zero-value is returned instead.
Get returns the value of p, either p itself, or, if p is a pointer, the
value that p points to. d is an optional default value to be returned
in the event that p is nil. If d is not specified, and p is nil, a
type-appropriate zero-value is returned instead.
// Get returns the value of p either p itself or if p is a pointer the // value that p points to . d is an optional default value to be returned // in the event that p is nil . If d is not specified and p is nil a // type - appropriate zero - value is returned instead .
func Get(p interface{}, d ...interface{}) interface{} {
	var (
		val interface{}
		ok  bool
	)
	if val, ok = GetOk(p); ok {
		return val
	}
	if len(d) > 0 {
		return d[0]
	}
	return val
}
func Get ( p interface { } , d ... interface { } ) interface { } { var ( val interface { } ok bool ) if val , ok = GetOk ( p ) ; ok { return val } if len ( d ) > 0 { return d [ 0 ] } return val }
Get returns the value of p, either p itself, or, if p is a pointer, the
value that p points to.
Get returns the value of p either p itself or if p is a pointer the value that p points to .