[#4] add advanced uses