Added files from @takluyver