support for conditional parts. resolves #238.