Edited, still need to integrate.