syn thread, icon, restructured code
new projection method but not yet test