code: func (ns *Namespace) EchoParam(a, key interface{}) interface{} {
  	av, isNil := indirect(reflect.ValueOf(a))
  	if isNil {
  		return ""
  	}
  
  	var avv reflect.Value
  	switch av.Kind() {
  	case reflect.Array, reflect.Slice:
  		index, ok := key.(int)
  		if ok && av.Len() > index {
  			avv = av.Index(index)
  		}
  	case reflect.Map:
  		kv := reflect.ValueOf(key)
  		if kv.Type().AssignableTo(av.Type().Key()) {
  			avv = av.MapIndex(kv)
  		}
  	}
  
  	avv, isNil = indirect(avv)
  
  	if isNil {
  		return ""
  	}
  
  	if avv.IsValid() {
  		switch avv.Kind() {
  		case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
  			return avv.Int()
  		case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
  			return avv.Uint()
  		case reflect.Float32, reflect.Float64:
  			return avv.Float()
  		case reflect.String:
  			return avv.String()
  		}
  	}
  
  	return ""
  }
docs: // EchoParam returns a given value if it is set; otherwise, it returns an
  // empty string.