Updated to latest techniques and schemes.