Finalized solution and symantic fixes