fixed and upgraded