better costs, more intermediate json