Version 1.1 2023.12.20
The algorithm has been significantly improved