Similiar but with suble differences, let me see what it would take to merge them.