The following is presented with no guarantees or support.