228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670228976067670