Modified a bit :)