added pub abstract expander