support more modifications