fix singleton inject