Might want some tests for this.