Updated implementation, not build pass