experiment C refactor
refactor