major work
actual code