* add factory for blocks
* small fix