formatting and fixes to make class extendable

private => protected
self::  => static::