Design metablock generation

prelim work on how generate will work