wip. More implementation.