added splice() methods