Let $A=\{1,2, \cdots, 2002\}, M=\{1001,2003,3005\}$. For any non-empty subset $B$ of $A$, if the sum of any two numbers in $B$ does not belong to $M$, then $B$ is called an $M$-free set. If $A=A_{1} \cup A_{2}, A_{1} \cap A_{2}=\varnothing$, and both $A_{1}$ and $A_{2}$ are $M$-free sets, then the ordered pair $\left(A_{1}, A_{2}\right)$ is called an $M$-partition of $A$. Try to find the number of all $M$-partitions of $A$. (Provided by Li Shenghong)
The answer is $2^{501}$.
For $m, n \in A$, if $m+n=1001$ or 2003 or 3005, then $m$ and $n$ are said to be "related".

It is easy to see that the numbers related to 1 are only 1000 and 2002, and the numbers related to 1000 and 2002 are 1 and 1003, and the numbers related to 1003 are 1000 and 2002.

Therefore, for $1, 1003, 1000, 2002$, they must be divided into two groups $\{1, 1003\}, \{1000, 2002\}$. Similarly, other groups can be divided as $\{2, 1004\}, \{999, 2001\}; \{3, 1005\}, \{998, 2000\}; \cdots; \{500, 1502\}, \{501, 1503\}; \{1001\}, \{1002\}$.
Thus, the 2002 numbers in $A$ are divided into 501 pairs, totaling 1002 groups.
Since any number is related to and only to the corresponding other group, if one group of a pair is in $A_{1}$, the other group must be in $A_{2}$.

Conversely, if one group of a pair is in $A_{2}$, the other group must be in $A_{1}$, and there are no related numbers in $A_{1}$ and $A_{2}$. Therefore, the number of $M$-partitions of $A$ is $2^{501}$.