Add shift for private, protected, public methods, (thanks to Max Melentiev)