My A2 project implementation