working tutorial complete