seperated code, work begins soon.