[UPDATE] add fluent interface & cs fix