mainly avoids the copy/paste blocks. maybe revisit w/ builder API.