no more writing this skeleton from scratch each time!