create table
  public.problems (
    id bigint generated by default as identity,
    title text not null,
    description text not null,
    type character varying not null,
    tags character varying[] null,
    author uuid null,
    is_draft boolean null default true,
    is_hidden boolean null default false,
    created_at timestamp with time zone null default now(),
    constraint problems_pkey primary key (id),
    constraint problems_author_fkey foreign key (author) references auth.users (id)
  ) tablespace pg_default;

alter table public.problems enable row level security;

create policy "Public problems are viewable by everyone." on problems
  for select using (true);