Some logic changes
Types added