added some nice code