mouse i2c problem

#include<Wire.h>    
#include <hidboot.h>
#include <usbhub.h>
#ifdef dobogusinclude
#include <spi4teensy3.h>
#include <SPI.h>
#endif
int x; // mouse x
int y; // mouse y
int l,r;

class MouseRptParser : public MouseReportParser
{
protected:
void OnMouseMove (MOUSEINFO *mi);
void OnLeftButtonUp (MOUSEINFO *mi);
void OnLeftButtonDown (MOUSEINFO *mi);
void OnRightButtonUp (MOUSEINFO *mi);
void OnRightButtonDown (MOUSEINFO *mi);
void OnMiddleButtonUp (MOUSEINFO *mi);
void OnMiddleButtonDown (MOUSEINFO *mi);
};
void MouseRptParser::OnMouseMove(MOUSEINFO *mi)
{
x =  mi->dX;
y =  mi->dY;

Wire.beginTransmission(8);                          
Wire.write(x);
Wire.write(y);
//Wire.write(l);                     //transmit to device 8
//Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);

Wire.beginTransmission(7);                          
Wire.write(x);
Wire.write(y);
//Wire.write(l);                      // transmit to device 7
//Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);

}
void MouseRptParser::OnLeftButtonUp (MOUSEINFO *mi)
{
//Serial.println("L Butt Up");
l=0;
Wire.beginTransmission(8);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
//Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);

Wire.beginTransmission(7);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
//Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);
}
void MouseRptParser::OnLeftButtonDown (MOUSEINFO *mi)
{
//Serial.println("L Butt Dn");
l=1;
Wire.beginTransmission(8);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
//Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);

Wire.beginTransmission(7);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
//Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);
}
void MouseRptParser::OnRightButtonUp (MOUSEINFO *mi)
{
Serial.println("R Butt Up");
r=0;
Wire.beginTransmission(8);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);

Wire.beginTransmission(7);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);
}
void MouseRptParser::OnRightButtonDown (MOUSEINFO *mi)
{
Serial.println("R Butt Dn");
r=1;
Wire.beginTransmission(8);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);

Wire.beginTransmission(7);                          
Wire.write(x);
Wire.write(y);
Wire.write(l);                     //transmit to device 8
Wire.write(r);                                                                                           
Wire.endTransmission();
delay(10);
}
void MouseRptParser::OnMiddleButtonUp (MOUSEINFO *mi)
{
Serial.println("M Butt Up");
}
void MouseRptParser::OnMiddleButtonDown (MOUSEINFO *mi)
{
Serial.println("M Butt Dn");
x = 90;
y = 90;
}

USB Usb;
USBHub Hub(&Usb);
HIDBoot<USB_HID_PROTOCOL_MOUSE> HidMouse(&Usb);

uint32_t next_time;

MouseRptParser Prs;

void setup()
{
//Serial.begin(9600);  

Wire.begin();       //Begins I2C communication at pin (A4,A5)


Serial.begin(115200);
#if !defined(__MIPSEL__)
while (!Serial); // Wait for serial port to connect – used on Leonardo, Teensy and other boards with built-in USB CDC serial connection
#endif
Serial.println("Start");

if (Usb.Init() == -1)
Serial.println("OSC did not start.");

delay( 200 );

next_time = millis() + 5000;

HidMouse.SetReportParser(0, &Prs);
}

void loop()
{
Usb.Task(); 
}
#include<Wire.h>    
#include <Mouse.h>  
int x,y,l,r;
int currentx = 0;
int previousx = 0;
int delta = 0;
int deltaValue = 1; // needs to be changed to suit your needs

void setup() {
Serial.begin( 115200 ); // start serial for output
 Wire.begin(8);
 Wire.onReceive(receiveEvent);
 Mouse.begin(); //Init mouse emulation  
}

void receiveEvent( int bytes )
{ 
 x = Wire.read();
 y = Wire.read(); 
 l = Wire.read();
 r = Wire.read();

}

void loop() {
  //Serial.println(l);
 currentx=x;
 delta = abs(previousx - currentx);  

if (delta >= deltaValue) {
 Mouse.move(x, y, 0); // move mouse on y axis
 delay(10);
}
else{
 Mouse.move(0, 0, 0); // move mouse on y axis
 delay(10);
}
 previousx = currentx;
 delay(10);

 
  if (l == HIGH) {
    if (!Mouse.isPressed(MOUSE_LEFT)) {
      Mouse.press(MOUSE_LEFT);
      delay(100); // delay to enable single and double-click
    }
  }
  
  else {
    if (Mouse.isPressed(MOUSE_LEFT)) {
      Mouse.release(MOUSE_LEFT);
    }
  }


  if (r == HIGH) {
    if (!Mouse.isPressed(MOUSE_RIGHT)) {
      Mouse.press(MOUSE_RIGHT);
      delay(100); // delay to enable single and double-click
    }
  }
  
  else {
    if (Mouse.isPressed(MOUSE_RIGHT)) {
      Mouse.release(MOUSE_RIGHT);
    }
  }

  
}

If you have a problem you failed to describe it.