expand method should be private