A Polynomial time Algorithm for 3SAT