use $SELF instead of $0