organize attributes
refactor source recipe