lazy connection
Merge branch 'master' into lazy

* master:
  refactor