initial commit
use chars instead of split
wip
wip
wip
wip
wip