use Handshake
Reconnect trait
Merge branch 'trait'