Reverting due to some issues. Class prototyping won't work for our implementation.