new patterns - better bounds!