sub-compact semi-auto