all strict errors fixed