added all the diff ways