added trigger and expression manipulation functions