Restructuring for better composer compatiblity