Much better implementation of makara