added skeleton framework