update from willy branch
remove copy from unofficial