resolved #33 with some other commits. removing smudges will not be implemented