I just realized that the library is one big file, this will be problematic each time this file is modified.
Can we separate each source code as one file?
I think, this is the best we can do to avoid merge conflicts. For example, lines 5-10 is for a specific code, now two pull requests change the same file, in one pull request, the code was changed before lines 5-10, so now, the mentioned specific code 5-10 will be adjusted. The second pull request will have a merge conflict because of that.
And as you can see, if someone will use a specific code in that library, he/she will have a hard time finding all the specific imports for that specific source code, unlike when the source code is just one file, for example, a code for binary search, he/she can simple get it as one file.