fix SOE
eliminate SOE