The current implementation has many branches and is hard to follow.
The current implementation has many branches and is hard to follow.