Added text wrap and formated and optimized code ;)