Add improved prototype