Nonlinear Coding Schemes