implment and condtion