Refactored to use Delegatepart instead of Expressionpart
Refactored to Delegatepart