completed strict conversion