attempt to reduce complexity