working on flexible support for all part types