add some freedom