DRY refactoring, pulled out share-this as module