try to reduce complexity