Don't mix between cls and self, use self all over.