fix from singleton attempt