Initial commit: pulled out from substance hub.