オープンソースやで。アルゴリズムの説明も公式サイトから辿れる。