controller skeleton