Changed to Caleb's string impl