add Set ( code copy from Dict )