There are a lot of problems with that code.
You can't just cut and paste chunks of code and hope they all play nice together.
Some of those rules can never work, others are inefficiently coded.
Never use (.*) in the middle or at the beginning of a RegEx pattern. Rule target should always include protocol and hostname.
Rules 1 to 4 and rules 5 to 7 essentially try to do the same thing, but are coded differently.
Rules 3 and 6 need to be merged - as do 4 and 7.