Added discussion and enhanced some parts