fix'ed self => static to match previous refactoring and facilitate extention