Updated with few extra methods