added connect()