adding more convenient api