Complete most of code