self on aspect can now be optional