import valuebased.classes.OpenValueBased;
class Main {
final OpenValueBased vb = new OpenValueBased();
{
final OpenValueBased localVb = new OpenValueBased();
final Object objectVb = new OpenValueBased();
synchronized (vb) {}
synchronized (localVb) {}
synchronized (objectVb) {}
synchronized (OpenValueBased.class) {}
f(vb);
g(vb);
}
void f(OpenValueBased vb) {
synchronized (vb) {}
}
void g(Object vb) {
synchronized (vb) {}
}
@SuppressWarnings("synchronization")
void h(OpenValueBased vb) {
synchronized (vb) {}
}
void i(Integer i) {
synchronized (i) {}
}
}