refined and added a lot of user friendliness ;)