Slight refactoring, partially way to and fro, hmmm :-(