add some feature (TODO) to discuss