#include<bits/stdc++.h>
using namespace std;
int vis[1000005];
int n;
void dfs(int i)
{
  if(i>n)
    return;
  vis[i]=1;
  if(!vis[i+4])
  dfs(i+4);
  if(!vis[i+7])
  dfs(i+7);
} 
int main()
{
  scanf("%d",&n);
  memset(vis,0,sizeof(vis));
  dfs(0);
  set<int> s;
  //cout<<vis[n]<<"ab\n";
  //cout<<"abc";
  for(int i=1;i<=n;i++)
  {
    //cout<<2;
    if(vis[i]==1)
    {
      s.insert(i);
      //cout<<i<<' ';
    }
  }
  if(s.find(n)==s.end())
  {
    cout<<-1;
    return 0;
  }
  vector<int> v;
  while(n>0)
  {
   // cout<<n;
    if(s.find(n-7)!=s.end())
    {
      v.push_back(7);
      n-=7;
      continue;
    }
    if(s.find(n-4)!=s.end())
    {
      v.push_back(4);
      n-=4;
    }
  }
  sort(v.begin(),v.end());
  for(int i=0;i<v.size();i++)
    printf("%d",v[i]);
  return 0;
}