UPDATE (Fix some bugs), add source code