Added some stuffs still need some fixing :P