We present a new self-stabilizing algorithm for finding a maximal strong matching in an arbitrary distributed network. The algorithm is capable of working with multiple types of demons (schedulers) as is the most recent algorithm in [1, 2]. The concepts behind the algorithm, using Ids in the newtork, promise to have applications for other graph theoretic primitives.