better structured block.js