we probably don't want to do a copy on the entire buffer ... make gross code instead