dc_scratch_space
struct dc_scratch_space *scratch,
struct dc_scratch_space current_state;
struct dc_scratch_space new_state;