structure transformations