modify the idea a little