Basic first-pass implementation