Code

update from Xavier Caine