avoid recursive imports