add poll support