Please review again this patch. Attached is even more elegant version.<br>