Updates and more complete, not finished