func (s *Session) Copy() *Session {
	s.m.Lock()
	scopy := copySession(s, true)
	s.m.Unlock()
	scopy.Refresh()
	return scopy
}
func (s *Session) Copy() *Session {
	s.m.Lock()
	scopy := copySession(s, true)
	s.m.Unlock()
	scopy.Refresh()
	return scopy
}
func ( s * Session ) Copy ( ) * Session { s . m . Lock ( ) scopy := copySession ( s , true ) s . m . Unlock ( ) scopy . Refresh ( ) return scopy }
// Copy works just like New, but preserves the exact authentication
// information from the original session.
Copy works just like New but preserves the exact authentication information from the original session .