add the selfless-methods optimization