New version

Almost complete. Use this file to optimize process.