Ported. Modified. Working off this.