some basic (and probably very broken) code.