actually I prefer @wang16's suggestion