converted over to using part object