finish porting executablePrice class