Major refactoring
!decopuled