1. add direct approach