about to redo with optional locale.