accept "nil" as an options