added ^D functionality